FormBuilder
Helper service for concisely constructing reactive form models.
Syntax
const fb = inject(FormBuilder); fb.group({...}) Parameters
| Name | Type | Required | Description |
|---|---|---|---|
config | object | No | Shorthand control definitions for group/array/control. |
Returns
FormGroup | FormArray | FormControl — The built reactive model.
Examples
import { Component, inject } from '@angular/core';
import { FormBuilder, ReactiveFormsModule, Validators } from '@angular/forms';
@Component({
selector: 'app-x',
standalone: true,
imports: [ReactiveFormsModule],
template: `<form [formGroup]="form"></form>`,
})
export class XComponent {
private fb = inject(FormBuilder);
form = this.fb.group({
name: ['', Validators.required],
email: ['', [Validators.required, Validators.email]],
});
}
Notes
Inject FormBuilder and use group(), array(), and control() to avoid repetitive
`new FormControl(...)` calls. Use `fb.nonNullable.group(...)` for non-nullable
controls. Functionally equivalent to constructing models by hand.