Form control
s are the most fundamental building block of the Forms. They are the basis of
both field
s and fieldset
s, and the form
itself.
Fields are the actual form controls the end user interacts with.
They extend the Field
class, which on its turn uses the FormControlMixin
.
Fields provide a normalized, predictable API for platform components and custom made form controls.
On top of this, they feature:
- data synchronization with models
- formatting of view values
- advanced validation possibilities
- creation of advanced user interaction scenarios via
interaction states
- provision of labels and help texts in an easy, declarative manner
- better focus management
- accessibility out of the box
- advanced styling possibilities: map your own Design System to the internal HTML structure
LionInput
, a wrapper for<input>
LionTextarea
, a wrapper for<textarea>
LionSelect
, a wrapper for<select>
LionRadio
, a wrapper for<input type="radio">
LionCheckbox
, a wrapper for<input type="checkbox">
Whenever a native form control doesn't exist or is not sufficient, a custom form field should be created. One could think of components like:
- slider
- combobox
- autocomplete
- etc...
Fieldsets are groups of fields. They can be considered fields on their own as well, since they
partly share the normalized api via FormControlMixin
.
Fieldsets are the basis for: