UntypedFormBuilder
UntypedFormBuilder is the same as FormBuilder
, but it provides untyped controls.
class UntypedFormBuilder extends FormBuilder {}
group
Like FormBuilder#group
, except the resulting group is untyped.
{ [key: string]: any; }
UntypedFormGroup
{ [key: string]: any; }
{ [key: string]: any; }
UntypedFormGroup
control
Like FormBuilder#control
, except the resulting control is untyped.
any
UntypedFormControl
array
Like FormBuilder#array
, except the resulting array is untyped.
any[]
UntypedFormArray
nonNullable
Returns a FormBuilder in which automatically constructed FormControl
elements
have {nonNullable: true}
and are non-nullable.
Constructing non-nullable controls
When constructing a control, it will be non-nullable, and will reset to its initial value.
let nnfb = new FormBuilder().nonNullable;let name = nnfb.control('Alex'); // FormControl<string>name.reset();console.log(name); // 'Alex'
Constructing non-nullable groups or arrays
When constructing a group or array, all automatically created inner controls will be non-nullable, and will reset to their initial values.
let nnfb = new FormBuilder().nonNullable;let name = nnfb.group({who: 'Alex'}); // FormGroup<{who: FormControl<string>}>name.reset();console.log(name); // {who: 'Alex'}
Constructing nullable fields on groups or arrays
It is still possible to have a nullable field. In particular, any FormControl
which is
already constructed will not be altered. For example:
let nnfb = new FormBuilder().nonNullable;// FormGroup<{who: FormControl<string|null>}>let name = nnfb.group({who: new FormControl('Alex')});name.reset(); console.log(name); // {who: null}
Because the inner control is constructed explicitly by the caller, the builder has
no control over how it is created, and cannot exclude the null
.
record
FormRecord<ɵElement<T, null>>
Constructs a new FormRecord
instance. Accepts a single generic argument, which is an object
containing all the keys and corresponding inner control types.
{ [key: string]: T; }
A collection of child controls. The key for each child is the name under which it is registered.
AbstractControlOptions | null
Configuration options object for the FormRecord
. The object should have the
AbstractControlOptions
type and might contain the following fields:
validators
: A synchronous validator function, or an array of validator functions.asyncValidators
: A single async validator or array of async validator functions.updateOn
: The event upon which the control should be updated (options: 'change' | 'blur' | submit').
FormRecord<ɵElement<T, null>>