AbstractControl
This is the base class for FormControl
, FormGroup
, and FormArray
.
abstract class AbstractControl {
constructor(validator: ValidatorFn, asyncValidator: AsyncValidatorFn)
value: any
validator: ValidatorFn | null
asyncValidator: AsyncValidatorFn | null
parent: FormGroup | FormArray
status: string
valid: boolean
invalid: boolean
pending: boolean
disabled: boolean
enabled: boolean
errors: ValidationErrors | null
pristine: boolean
dirty: boolean
touched: boolean
untouched: boolean
valueChanges: Observable<any>
statusChanges: Observable<any>
updateOn: FormHooks
root: AbstractControl
setValidators(newValidator: ValidatorFn | ValidatorFn[]): void
setAsyncValidators(newValidator: AsyncValidatorFn | AsyncValidatorFn[]): void
clearValidators(): void
clearAsyncValidators(): void
markAsTouched(opts: { onlySelf?: boolean; } = {}): void
markAsUntouched(opts: { onlySelf?: boolean; } = {}): void
markAsDirty(opts: { onlySelf?: boolean; } = {}): void
markAsPristine(opts: { onlySelf?: boolean; } = {}): void
markAsPending(opts: { onlySelf?: boolean; emitEvent?: boolean; } = {}): void
disable(opts: { onlySelf?: boolean; emitEvent?: boolean; } = {}): void
enable(opts: { onlySelf?: boolean; emitEvent?: boolean; } = {}): void
setParent(parent: FormGroup | FormArray): void
abstract setValue(value: any, options?: Object): void
abstract patchValue(value: any, options?: Object): void
abstract reset(value?: any, options?: Object): void
updateValueAndValidity(opts: { onlySelf?: boolean; emitEvent?: boolean; } = {}): void
setErrors(errors: ValidationErrors, opts: { emitEvent?: boolean; } = {}): void
get(path: string | (string | number)[]): AbstractControl | null
getError(errorCode: string, path?: string | (string | number)[]): any
hasError(errorCode: string, path?: string | (string | number)[]): boolean
}
Subclasses
See also
Description
It provides some of the shared behavior that all controls and groups of controls have, like
running validators, calculating status, and resetting state. It also defines the properties
that are shared between all sub-classes, like value
, valid
, and dirty
. It shouldn't be
instantiated directly.
Constructor
Initialize the AbstractControl instance. |
||||||
Parameters
|
Properties
Property | Description |
---|---|
value: any
|
Read-only.
The current value of the control.
|
validator: ValidatorFn | null
|
Declared in constructor.
The function that determines the synchronous validity of this control. |
asyncValidator: AsyncValidatorFn | null
|
Declared in constructor.
The function that determines the asynchronous validity of this control. |
parent: FormGroup | FormArray
|
Read-only.
The parent control. |
status: string
|
Read-only.
The validation status of the control. There are four possible validation status values:
These status values are mutually exclusive, so a control cannot be both valid AND invalid or invalid AND disabled. |
valid: boolean
|
Read-only.
A control is See also: |
invalid: boolean
|
Read-only.
A control is See also: |
pending: boolean
|
Read-only.
A control is See also: |
disabled: boolean
|
Read-only.
A control is Disabled controls are exempt from validation checks and are not included in the aggregate value of their ancestor controls. See also: |
enabled: boolean
|
Read-only.
A control is See also: |
errors: ValidationErrors | null
|
Read-only.
An object containing any errors generated by failing validation, or null if there are no errors. |
pristine: boolean
|
Read-only.
A control is |
dirty: boolean
|
Read-only.
A control is |
touched: boolean
|
Read-only.
True if the control is marked as A control is marked |
untouched: boolean
|
Read-only.
True if the control has not been marked as touched A control is |
valueChanges: Observable<any>
|
Read-only.
A multicasting observable that emits an event every time the value of the control changes, in the UI or programmatically. |
statusChanges: Observable<any>
|
Read-only.
A multicasting observable that emits an event every time the validation See also: |
updateOn: FormHooks
|
Read-only.
Reports the update strategy of the |
root: AbstractControl
|
Read-only.
Retrieves the top-level ancestor of this control. |
Methods
Sets the synchronous validators that are active on this control. Calling this overwrites any existing sync validators. |
|||
Parameters
Returns
|
Sets the async validators that are active on this control. Calling this overwrites any existing async validators. |
|||
Parameters
Returns
|
Empties out the sync validator list. |
ParametersThere are no parameters. Returns
|
Empties out the async validator list. |
ParametersThere are no parameters. Returns
|
Marks the control as See also: |
|||
Parameters
Returns
|
|||
If the control has any children, also marks all children as |
Marks the control as See also: |
|||
Parameters
Returns
|
Marks the control as See also: |
|||
Parameters
Returns
|
|||
If the control has any children, marks all children as |
Marks the control as See also: |
|||
Parameters
Returns
|
|||
A control is pending while the control performs async validation. |
Disables the control. This means the control is exempt from validation checks and
excluded from the aggregate value of any parent. Its status is See also: |
|||
Parameters
Returns
|
|||
If the control has children, all children are also disabled. |
Enables the control. This means the control is included in validation checks and the aggregate value of its parent. Its status recalculates based on its value and its validators. See also: |
|||
Parameters
Returns
|
|||
By default, if the control has children, all children are enabled. |
Sets the value of the control. Abstract method (implemented in sub-classes). |
Patches the value of the control. Abstract method (implemented in sub-classes). |
Resets the control. Abstract method (implemented in sub-classes). |
Recalculates the value and validation status of the control. |
|||
Parameters
Returns
|
|||
By default, it also updates the value and validity of its ancestors. |
Sets errors on a form control when running validations manually, rather than automatically. |
||||||
Parameters
Returns
|
||||||
Calling |
||||||
Usage NotesManually set the errors for a control
|
Retrieves a child control given the control's name or path. |
|||
Parameters
Returns
|
|||
Usage NotesRetrieve a nested controlFor example, to get a
-OR-
|
Reports error data for the control with the given path. |
||||||
Parameters
Returns
|
||||||
Usage NotesFor example, for the following
The path to the 'street' control from the root form would be 'address' -> 'street'. It can be provided to this method in one of two formats:
|
Reports whether the control with the given path has the error specified. |
||||||
Parameters
Returns
If the control is not present, false is returned. |
||||||
Usage NotesFor example, for the following
The path to the 'street' control from the root form would be 'address' -> 'street'. It can be provided to this method in one of two formats:
If no path is given, this method checks for the error on the current control. |