Signal Forms in Angular v22
Mit Angular v22 wurden Signal Forms offiziell als Stable-Feature veröffentlicht. Wir setzen die API allerdings bereits seit ihrer Einführung als Experimental Feature in Angular v21 ein und konnten die Entwicklung über mehrere Releases hinweg verfolgen.
Signal Forms übertragen den Signal-basierten Ansatz von Angular auf die Arbeit mit Formularen. Während Reactive Forms auf einer Hierarchie aus FormControl, FormGroup und Observables basieren, werden Zustände und Änderungen bei Signal Forms direkt über Signals abgebildet. Dadurch entsteht ein konsistenteres Programmiermodell für Anwendungen, die bereits auf Signals setzen.
Ein zentraler Bestandteil der neuen API ist die form()-Funktion. Sie ermöglicht die Definition von Formularstrukturen auf Basis eines Datenmodells und vereinfacht den Zugriff auf Werte, Statusinformationen und Validierungsergebnisse. Validierungen werden direkt am Formularmodell beschrieben und können ohne zusätzliche Subscriptions oder umfangreichen Boilerplate-Code ausgewertet werden.
Aus unserer Erfahrung reduziert dieser Ansatz die Komplexität vieler Formulare deutlich. Besonders bei kleineren und mittleren Formularen wirkt der Code kompakter und leichter nachvollziehbar als vergleichbare Implementierungen mit Reactive Forms. Gleichzeitig fügt sich die API nahtlos in signal-basierte Komponenten ein und vermeidet den Wechsel zwischen unterschiedlichen Reaktivitätskonzepten.
Mit dem Stable-Release in Angular v22 sind Signal Forms nun auch offiziell für den produktiven Einsatz vorgesehen und stellen eine interessante Alternative zu klassischen Reactive Forms dar.
