AbstractControl
Это базовый класс для FormControl, FormGroup и FormArray.
API
abstract class AbstractControl<TValue = any, TRawValue extends TValue = TValue, TValueWithOptionalControlStates = any> {
constructor(validators: ValidatorFn | ValidatorFn[] | null, asyncValidators: AsyncValidatorFn | AsyncValidatorFn[] | null): AbstractControl<TValue, TRawValue, TValueWithOptionalControlStates>;
readonly value: TValue;
get validator(): ValidatorFn | null;
get asyncValidator(): AsyncValidatorFn | null;
readonly parent: FormGroup<any> | FormArray<any> | null;
readonly status: FormControlStatus;
readonly valid: boolean;
readonly invalid: boolean;
readonly pending: boolean;
readonly disabled: boolean;
readonly enabled: boolean;
readonly errors: ValidationErrors | null;
readonly pristine: boolean;
readonly dirty: boolean;
readonly touched: boolean;
readonly untouched: boolean;
readonly events: any;
readonly valueChanges: Observable<TValue>;
readonly statusChanges: Observable<FormControlStatus>;
readonly updateOn: FormHooks;
setValidators(validators: ValidatorFn | ValidatorFn[] | null): void;
setAsyncValidators(validators: AsyncValidatorFn | AsyncValidatorFn[] | null): void;
addValidators(validators: ValidatorFn | ValidatorFn[]): void;
addAsyncValidators(validators: AsyncValidatorFn | AsyncValidatorFn[]): void;
removeValidators(validators: ValidatorFn | ValidatorFn[]): void;
removeAsyncValidators(validators: AsyncValidatorFn | AsyncValidatorFn[]): void;
hasValidator(validator: ValidatorFn): boolean;
hasAsyncValidator(validator: AsyncValidatorFn): boolean;
clearValidators(): void;
clearAsyncValidators(): void;
markAsTouched(opts?: { onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; } | undefined): void;
markAsTouched(opts?: { onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; sourceControl?: AbstractControl<any, any, any> | undefined; } | undefined): void;
markAllAsDirty(opts?: { emitEvent?: boolean | undefined; }): void;
markAllAsTouched(opts?: { emitEvent?: boolean | undefined; }): void;
markAsUntouched(opts?: { onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; } | undefined): void;
markAsUntouched(opts: { onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; sourceControl?: AbstractControl<any, any, any> | undefined; }): void;
markAsDirty(opts?: { onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; } | undefined): void;
markAsDirty(opts: { onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; sourceControl?: AbstractControl<any, any, any> | undefined; }): void;
markAsPristine(opts?: { onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; } | undefined): void;
markAsPristine(opts: { onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; sourceControl?: AbstractControl<any, any, any> | undefined; }): void;
markAsPending(opts?: { onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; } | undefined): void;
markAsPending(opts: { onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; sourceControl?: AbstractControl<any, any, any> | undefined; }): void;
disable(opts?: { onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; } | undefined): void;
disable(opts: { onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; sourceControl?: AbstractControl<any, any, any> | undefined; }): void;
enable(opts?: { onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; }): void;
setParent(parent: FormGroup<any> | FormArray<any> | null): void;
abstract setValue(value: TRawValue, options?: Object | undefined): void;
abstract patchValue(value: TValue, options?: Object | undefined): void;
abstract reset(value?: TValueWithOptionalControlStates | undefined, options?: Object | undefined): void;
getRawValue(): any;
updateValueAndValidity(opts?: { onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; } | undefined): void;
updateValueAndValidity(opts: { onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; sourceControl?: AbstractControl<any, any, any> | undefined; }): void;
setErrors(errors: ValidationErrors | null, opts?: { emitEvent?: boolean | undefined; } | undefined): void;
setErrors(errors: ValidationErrors | null, opts?: { emitEvent?: boolean | undefined; shouldHaveEmitted?: boolean | undefined; } | undefined): void;
get<P extends string | readonly (string | number)[]>(path: P): AbstractControl<ɵGetProperty<TRawValue, P>, ɵGetProperty<TRawValue, P>, any> | null;
get<P extends string | Array<string | number>>(path: P): AbstractControl<ɵGetProperty<TRawValue, P>, ɵGetProperty<TRawValue, P>, any> | null;
getError(errorCode: string, path?: string | (string | number)[] | undefined): any;
hasError(errorCode: string, path?: string | (string | number)[] | undefined): boolean;
readonly root: AbstractControl<any, any, any>;
}
constructor
AbstractControl<TValue, TRawValue, TValueWithOptionalControlStates>Инициализирует экземпляр AbstractControl.
ValidatorFn | ValidatorFn[] | nullФункция или массив функций, используемых для синхронного определения допустимости этого элемента управления.
AsyncValidatorFn | AsyncValidatorFn[] | nullФункция или массив функций, используемых для асинхронного определения допустимости этого элемента управления.
AbstractControl<TValue, TRawValue, TValueWithOptionalControlStates>
value
TValueТекущее значение элемента управления.
- Для
FormControl— текущее значение. - Для включенного
FormGroup— значения включенных элементов управления в виде объекта с парой «ключ-значение» для каждого элемента группы. - Для отключенного
FormGroup— значения всех элементов управления в виде объекта с парой «ключ-значение» для каждого элемента группы. - Для включенного
FormArray— значения включенных элементов управления в виде массива. - Для отключенного
FormArray— значения всех элементов управления в виде массива.
validator
ValidatorFn | nullВозвращает функцию, используемую для синхронного определения допустимости этого элемента управления. Если добавлено несколько валидаторов, это будет одна составная функция. Дополнительные сведения см. в разделе Validators.compose().
validator
ValidatorFn | nullasyncValidator
AsyncValidatorFn | nullВозвращает функцию, используемую для асинхронного определения допустимости этого элемента управления. Если добавлено несколько валидаторов, это будет одна составная функция. Дополнительные сведения см. в разделе Validators.compose().
asyncValidator
AsyncValidatorFn | nullstatus
FormControlStatusСтатус проверки элемента управления.
valid
booleanЭлемент управления является valid, если его status имеет значение VALID.
invalid
booleanЭлемент управления является invalid, если его status имеет значение INVALID.
pending
booleanЭлемент управления находится в состоянии pending, если его status имеет значение PENDING.
disabled
booleanЭлемент управления является disabled, если его status имеет значение DISABLED.
Отключенные элементы управления не проходят проверки валидности и не включаются в агрегированное значение родительских элементов управления.
enabled
booleanЭлемент управления является enabled, если его status не имеет значение DISABLED.
errors
ValidationErrors | nullОбъект, содержащий ошибки, возникшие при неудачной проверке валидности, или null, если ошибок нет.
pristine
booleanЭлемент управления является pristine, если пользователь еще не изменил его значение в пользовательском интерфейсе.
dirty
booleanЭлемент управления является dirty, если пользователь изменил его значение в пользовательском интерфейсе.
touched
booleanTrue, если элемент управления помечен как touched.
Элемент управления помечается как touched после того, как пользователь вызвал для него событие blur.
untouched
booleanTrue, если элемент управления не был помечен как touched.
Элемент управления является untouched, если пользователь еще не вызвал для него событие blur.
events
anyМногоадресный observable, который генерирует событие каждый раз, когда изменяется состояние элемента управления. Он генерирует события при изменении значения, статуса, состояния pristine или touched.
Примечание: При изменении значения событие генерируется сразу после обновления значения этого элемента управления. Значение родительского элемента управления (например, если этот FormControl является частью FormGroup) обновляется позже. Поэтому обращение к значению родительского элемента управления (с помощью свойства value) из обратного вызова этого события может вернуть еще не обновленное значение. Вместо этого подпишитесь на events родительского элемента управления. Для других типов событий они генерируются после обновления родительского элемента управления.
valueChanges
Observable<TValue>Многоадресный observable, который генерирует событие каждый раз, когда значение элемента управления изменяется в пользовательском интерфейсе или программно. Он также генерирует событие при каждом вызове enable() или disable(), если в качестве аргумента функции не передано {emitEvent: false}.
Примечание: событие генерируется сразу после обновления значения этого элемента управления. Значение родительского элемента управления (например, если этот FormControl является частью FormGroup) обновляется позже. Поэтому обращение к значению родительского элемента управления (с помощью свойства value) из обратного вызова этого события может вернуть еще не обновленное значение. Вместо этого подпишитесь на событие valueChanges родительского элемента управления.
statusChanges
Observable<FormControlStatus>Многоадресный observable, который генерирует событие каждый раз, когда пересчитывается status проверки валидности элемента управления.
updateOn
FormHooksВозвращает стратегию обновления AbstractControl (то есть событие, при котором элемент управления обновляет свое состояние). Возможные значения: 'change' | 'blur' | 'submit' Значение по умолчанию: 'change'
setValidators
voidЗадает синхронные валидаторы, активные для этого элемента управления. При вызове заменяются все существующие синхронные валидаторы.
При добавлении или удалении валидатора во время выполнения необходимо вызвать updateValueAndValidity(), чтобы новые правила проверки вступили в силу.
Если нужно добавить новый валидатор, не затрагивая существующие, рассмотрите возможность использования метода addValidators().
void
setAsyncValidators
voidЗадает асинхронные валидаторы, активные для этого элемента управления. При вызове заменяются все существующие асинхронные валидаторы.
При добавлении или удалении валидатора во время выполнения необходимо вызвать updateValueAndValidity(), чтобы новые правила проверки вступили в силу.
Если нужно добавить новый валидатор, не затрагивая существующие, рассмотрите возможность использования метода addAsyncValidators().
void
addValidators
voidДобавляет к этому элементу управления один или несколько синхронных валидаторов, не затрагивая другие валидаторы.
При добавлении или удалении валидатора во время выполнения необходимо вызвать updateValueAndValidity(), чтобы новые правила проверки вступили в силу.
Добавление уже существующего валидатора не даст эффекта. Если в массиве validators присутствуют повторяющиеся функции-валидаторы, в элемент управления формы будет добавлен только первый экземпляр.
ValidatorFn | ValidatorFn[]Новая функция-валидатор или функции-валидаторы, которые нужно добавить к этому элементу управления.
void
addAsyncValidators
voidДобавляет к этому элементу управления один или несколько асинхронных валидаторов, не затрагивая другие валидаторы.
При добавлении или удалении валидатора во время выполнения необходимо вызвать updateValueAndValidity(), чтобы новые правила проверки вступили в силу.
Добавление уже существующего валидатора не даст эффекта.
AsyncValidatorFn | AsyncValidatorFn[]Новая асинхронная функция-валидатор или функции-валидаторы, которые нужно добавить к этому элементу управления.
void
removeValidators
voidУдаляет синхронный валидатор из этого элемента управления, не затрагивая другие валидаторы. Валидаторы сравниваются по ссылке на функцию; необходимо передать ссылку именно на ту функцию-валидатор, которая была задана изначально. Если указанный валидатор не найден, он игнорируется.
void
// Reference to the RequiredValidator
const ctrl = new FormControl<string | null>('', Validators.required);
ctrl.removeValidators(Validators.required);
// Reference to anonymous function inside MinValidator
const minValidator = Validators.min(3);
const ctrl = new FormControl<string | null>('', minValidator);
expect(ctrl.hasValidator(minValidator)).toEqual(true)
expect(ctrl.hasValidator(Validators.min(3))).toEqual(false)
ctrl.removeValidators(minValidator);
При добавлении или удалении валидатора во время выполнения необходимо вызвать updateValueAndValidity(), чтобы новые правила проверки вступили в силу.
removeAsyncValidators
voidУдаляет асинхронный валидатор из этого элемента управления, не затрагивая другие валидаторы. Валидаторы сравниваются по ссылке на функцию; необходимо передать ссылку именно на ту функцию-валидатор, которая была задана изначально. Если указанный валидатор не найден, он игнорируется.
При добавлении или удалении валидатора во время выполнения необходимо вызвать updateValueAndValidity(), чтобы новые правила проверки вступили в силу.
AsyncValidatorFn | AsyncValidatorFn[]Асинхронный валидатор или валидаторы, которые нужно удалить.
void
hasValidator
booleanПроверяет, присутствует ли в этом элементе управления функция синхронного валидатора. Указанный валидатор должен быть ссылкой именно на ту функцию, которая была задана ранее.
ValidatorFnВалидатор, наличие которого нужно проверить. Сравнение выполняется по ссылке на функцию.
booleanНайден ли указанный валидатор в этом элементе управления.
// Reference to the RequiredValidator const ctrl = new FormControl<number | null>(0, Validators.required); expect(ctrl.hasValidator(Validators.required)).toEqual(true) // Reference to anonymous function inside MinValidator const minValidator = Validators.min(3); const ctrl = new FormControl<number | null>(0, minValidator); expect(ctrl.hasValidator(minValidator)).toEqual(true) expect(ctrl.hasValidator(Validators.min(3))).toEqual(false)
hasAsyncValidator
booleanПроверяет, присутствует ли в этом элементе управления функция асинхронного валидатора. Указанный валидатор должен быть ссылкой именно на ту функцию, которая была задана ранее.
AsyncValidatorFnАсинхронный валидатор, наличие которого нужно проверить. Сравнение выполняется по ссылке на функцию.
booleanНайден ли указанный асинхронный валидатор в этом элементе управления.
clearValidators
voidОчищает список синхронных валидаторов.
При добавлении или удалении валидатора во время выполнения необходимо вызвать updateValueAndValidity(), чтобы новые правила проверки вступили в силу.
void
clearAsyncValidators
voidОчищает список асинхронных валидаторов.
При добавлении или удалении валидатора во время выполнения необходимо вызвать updateValueAndValidity(), чтобы новые правила проверки вступили в силу.
void
markAsTouched
2 перегрузкиПомечает элемент управления как touched. Элемент управления считается затронутым при событиях фокуса и потери фокуса, которые не изменяют значение.
{ onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; } | undefinedПараметры конфигурации, определяющие, как элемент управления распространяет изменения и генерирует события после применения пометки.
-
onlySelf: если значение равно true, помечается только этот элемент управления. Если значение равно false или параметр не указан, помечаются все непосредственные предки. Значение по умолчанию — false. -
emitEvent: если значение равно true или параметр не указан (значение по умолчанию), observableeventsгенерируетTouchedChangeEvent, у которого свойствоtouchedимеет значениеtrue. Если значение равно false, события не генерируются.
void
{ onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; sourceControl?: AbstractControl<any, any, any> | undefined; } | undefined
void
markAllAsDirty
voidПомечает этот элемент управления и все его дочерние элементы управления как dirty.
{ emitEvent?: boolean | undefined; }Параметры конфигурации, определяющие, как элемент управления распространяет изменения и генерирует события после применения пометки.
-
emitEvent: если значение равно true или параметр не указан (значение по умолчанию), observableeventsгенерируетPristineChangeEvent, у которого свойствоpristineимеет значениеfalse. Если значение равно false, события не генерируются.
void
markAllAsTouched
voidПомечает этот элемент управления и все его дочерние элементы управления как touched.
{ emitEvent?: boolean | undefined; }Параметры конфигурации, определяющие, как элемент управления распространяет изменения и генерирует события после применения пометки.
-
emitEvent: если значение равно true или параметр не указан (значение по умолчанию), observableeventsгенерируетTouchedChangeEvent, у которого свойствоtouchedимеет значениеtrue. Если значение равно false, события не генерируются.
void
markAsUntouched
2 перегрузкиПомечает элемент управления как untouched.
Если у элемента управления есть дочерние элементы, они также помечаются как untouched, а статус touched всех родительских элементов управления пересчитывается.
{ onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; } | undefinedПараметры конфигурации, определяющие, как элемент управления распространяет изменения и генерирует события после применения пометки.
-
onlySelf: если значение равно true, помечается только этот элемент управления. Если значение равно false или параметр не указан, помечаются все непосредственные предки. Значение по умолчанию — false. -
emitEvent: если значение равно true или параметр не указан (значение по умолчанию), observableeventsгенерируетTouchedChangeEvent, у которого свойствоtouchedимеет значениеfalse. Если значение равно false, события не генерируются.
void
{ onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; sourceControl?: AbstractControl<any, any, any> | undefined; }
void
markAsDirty
2 перегрузкиПомечает элемент управления как dirty. Элемент управления становится dirty, когда его значение изменяется через пользовательский интерфейс; сравните с markAsTouched.
{ onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; } | undefinedПараметры конфигурации, определяющие, как элемент управления распространяет изменения и генерирует события после применения пометки.
-
onlySelf: если значение равно true, помечается только этот элемент управления. Если значение равно false или параметр не указан, помечаются все непосредственные предки. Значение по умолчанию — false. -
emitEvent: если значение равно true или параметр не указан (значение по умолчанию), observableeventsгенерируетPristineChangeEvent, у которого свойствоpristineимеет значениеfalse. Если значение равно false, события не генерируются.
void
{ onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; sourceControl?: AbstractControl<any, any, any> | undefined; }
void
markAsPristine
2 перегрузкиПомечает элемент управления как pristine.
Если у элемента управления есть дочерние элементы, они помечаются как pristine, а статус pristine всех родительских элементов управления пересчитывается.
{ onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; } | undefinedПараметры конфигурации, определяющие, как элемент управления генерирует события после применения пометки.
-
onlySelf: если значение равно true, помечается только этот элемент управления. Если значение равно false или параметр не указан, помечаются все непосредственные предки. Значение по умолчанию — false. -
emitEvent: если значение равно true или параметр не указан (значение по умолчанию), observableeventsгенерируетPristineChangeEvent, у которого свойствоpristineимеет значениеtrue. Если значение равно false, события не генерируются.
void
{ onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; sourceControl?: AbstractControl<any, any, any> | undefined; }
void
markAsPending
2 перегрузкиПомечает элемент управления как pending.
Элемент управления находится в ожидании, пока выполняется его асинхронная проверка.
{ onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; } | undefinedПараметры конфигурации, определяющие, как элемент управления распространяет изменения и генерирует события после установки отметки.
-
onlySelf: Если значение равно true, помечается только этот элемент управления. Если значение равно false или не указано, помечаются все непосредственные предки. Значение по умолчанию — false. -
emitEvent: Если значение равно true или не указано (по умолчанию), наблюдаемый объектstatusChangesгенерирует событие с последним статусом, когда элемент управления помечен как ожидающий, а наблюдаемый объектeventsгенерирует событиеStatusChangeEvent, у которого свойствуstatusприсвоено значениеPENDING. Если значение равно false, события не генерируются.
void
{ onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; sourceControl?: AbstractControl<any, any, any> | undefined; }
void
disable
2 перегрузкиОтключает элемент управления. Это означает, что он не участвует в проверках валидности и исключается из совокупного значения любого родительского элемента. Его статус — DISABLED.
Если у элемента управления есть дочерние элементы, они также отключаются.
{ onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; } | undefinedПараметры конфигурации, определяющие, как элемент управления распространяет изменения и генерирует события после отключения.
-
onlySelf: Если значение равно true, помечается только этот элемент управления. Если значение равно false или не указано, помечаются все непосредственные предки. Значение по умолчанию — false. -
emitEvent: Если значение равно true или не указано (по умолчанию), наблюдаемые объектыstatusChanges,valueChangesиeventsгенерируют события с последними статусом и значением при отключении элемента управления. Если значение равно false, события не генерируются.
void
{ onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; sourceControl?: AbstractControl<any, any, any> | undefined; }
void
enable
voidВключает элемент управления. Это означает, что он участвует в проверках валидности и учитывается в совокупном значении родительского элемента. Его статус пересчитывается на основе его значения и валидаторов.
По умолчанию, если у элемента управления есть дочерние элементы, они также включаются.
{ onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; }Параметры конфигурации, определяющие, как элемент управления распространяет изменения и генерирует события при пометке как нетронутого.
-
onlySelf: Если значение равно true, помечается только этот элемент управления. Если значение равно false или не указано, помечаются все непосредственные предки. Значение по умолчанию — false. -
emitEvent: Если значение равно true или не указано (по умолчанию), наблюдаемые объектыstatusChanges,valueChangesиeventsгенерируют события с последними статусом и значением при включении элемента управления. Если значение равно false, события не генерируются.
void
setParent
voidsetValue
voidЗадает значение элемента управления. Абстрактный метод (реализуется в подклассах).
TRawValue
Object | undefined
void
patchValue
voidЧастично задает значение элемента управления. Абстрактный метод (реализуется в подклассах).
TValue
Object | undefined
void
reset
voidСбрасывает элемент управления. Абстрактный метод (реализуется в подклассах).
TValueWithOptionalControlStates | undefined
Object | undefined
void
getRawValue
anyНеобработанное значение этого элемента управления. Для большинства реализаций элементов управления необработанное значение включает отключенные дочерние элементы.
any
updateValueAndValidity
2 перегрузкиПересчитывает значение и статус валидности элемента управления.
По умолчанию также обновляются значение и валидность его предков.
{ onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; } | undefinedПараметры конфигурации определяют, как элемент управления распространяет изменения и генерирует события после применения обновлений и проверок валидности.
-
onlySelf: Если значение равно true, обновляется только этот элемент управления. Если значение равно false или не указано, обновляются все непосредственные предки. Значение по умолчанию — false. -
emitEvent: Если значение равно true или не указано (по умолчанию), наблюдаемые объектыstatusChanges,valueChangesиeventsгенерируют события с последними статусом и значением при обновлении элемента управления. Если значение равно false, события не генерируются.
void
{ onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; sourceControl?: AbstractControl<any, any, any> | undefined; }
void
setErrors
2 перегрузкиЗадает ошибки элемента управления формы при выполнении проверок вручную, а не автоматически.
Вызов setErrors также обновляет валидность родительского элемента управления.
Примечание. Ошибки, заданные вручную, всегда перезаписываются результатами следующего запуска проверки.
{ emitEvent?: boolean | undefined; } | undefinedПараметры конфигурации, определяющие, как элемент управления распространяет изменения и генерирует события после задания ошибок элемента управления.
-
emitEvent: Если значение равно true или не указано (по умолчанию), наблюдаемый объектstatusChangesгенерирует событие после задания ошибок.
void
Задание ошибок элемента управления вручную
const login = new FormControl('someLogin');
login.setErrors({
notUnique: true
});
expect(login.valid).toEqual(false);
expect(login.errors).toEqual({ notUnique: true });
login.setValue('someOtherLogin');
expect(login.valid).toEqual(true);
{ emitEvent?: boolean | undefined; shouldHaveEmitted?: boolean | undefined; } | undefined
void
get
2 перегрузкиВозвращает дочерний элемент управления по его имени или пути.
Эта сигнатура метода get поддерживает строки и массивы const (.get(['foo', 'bar'] as const)).
P
AbstractControl<ɵGetProperty<TRawValue, P>, ɵGetProperty<TRawValue, P>, any> | null
Возвращает дочерний элемент управления по его имени или пути.
Эта сигнатура метода get поддерживает массивы, не являющиеся константными (изменяемые). Вывод информации о типах будет менее точным, поэтому по возможности следует передавать массив readonly.
P
AbstractControl<ɵGetProperty<TRawValue, P>, ɵGetProperty<TRawValue, P>, any> | null
getError
anyВозвращает данные об ошибке для элемента управления, заданного указанным путем.
stringКод ошибки для проверки
string | (string | number)[] | undefinedСписок имен элементов управления, определяющий путь от текущего элемента управления к элементу, для которого нужно проверить ошибки.
anyДанные об указанной ошибке. Если элемент управления или ошибка отсутствует, возвращается null.
Например, для следующей FormGroup:
form = new FormGroup({
address: new FormGroup({ street: new FormControl() })
});
Путь от корневой формы к элементу управления 'street' будет таким: 'address' -> 'street'.
Его можно передать этому методу в одном из двух форматов:
- Массив строк с именами элементов управления, например
['address', 'street'] - Разделенный точками список имен элементов управления в одной строке, например
'address.street'
hasError
booleanПроверяет, есть ли у элемента управления, заданного указанным путем, указанная ошибка.
stringКод ошибки для проверки
string | (string | number)[] | undefinedСписок имен элементов управления, определяющий путь от текущего элемента управления к элементу, для которого нужно проверить ошибки.
booleanНаличие указанной ошибки у элемента управления по указанному пути.
Если элемент управления отсутствует, возвращается false.
Например, для следующей FormGroup:
form = new FormGroup({
address: new FormGroup({ street: new FormControl() })
});
Путь от корневой формы к элементу управления 'street' будет таким: 'address' -> 'street'.
Его можно передать этому методу в одном из двух форматов:
- Массив строк с именами элементов управления, например
['address', 'street'] - Разделенный точками список имен элементов управления в одной строке, например
'address.street'
Если путь не указан, этот метод проверяет наличие ошибки у текущего элемента управления.
root
AbstractControl<any, any, any>Возвращает корневой элемент-предок этого элемента управления.
Описание
Это базовый класс для FormControl, FormGroup и FormArray.
Он предоставляет общие возможности для всех элементов управления и их групп, например запуск валидаторов, вычисление статуса и сброс состояния. Также он определяет свойства, общие для всех подклассов, такие как value, valid и dirty. Его не следует создавать напрямую.
Первый параметр типа TValue представляет тип значения элемента управления (control.value). Необязательный параметр типа TRawValue представляет тип необработанного значения (control.getRawValue()).
Super-powered by Google ©2010–2025.
Code licensed under an MIT-style License. Documentation licensed under CC BY 4.0.
https://angular.dev/api/forms/AbstractControl