Cookbooks / Signal forms
Angular signal forms
form() derives the field tree from a model signal. Bind native inputs with [formField] and [base-input]. Composite CVA controls (combobox, tags, toggle) still use ngModel until they implement FormValueControl.
- Install inputs. Run npx base-ui-cli add input.
- Create the form. Build form() from a model signal and attach schema validators (required, email, maxLength).
- Bind fields. Put [formField] and base-input / base-textarea on native controls.
- Submit. Call submit() and read the model signal. Composite CVA controls still use ngModel until they implement FormValueControl.