Spec-Zone.ru › Angular

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.

@paramvalidatorsValidatorFn | ValidatorFn[] | null

Функция или массив функций, используемых для синхронного определения допустимости этого элемента управления.

@paramasyncValidatorsAsyncValidatorFn | AsyncValidatorFn[] | null

Функция или массив функций, используемых для асинхронного определения допустимости этого элемента управления.

@returnsAbstractControl<TValue, TRawValue, TValueWithOptionalControlStates>

value

TValue

Текущее значение элемента управления.

  • Для FormControl — текущее значение.
  • Для включенного FormGroup — значения включенных элементов управления в виде объекта с парой «ключ-значение» для каждого элемента группы.
  • Для отключенного FormGroup — значения всех элементов управления в виде объекта с парой «ключ-значение» для каждого элемента группы.
  • Для включенного FormArray — значения включенных элементов управления в виде массива.
  • Для отключенного FormArray — значения всех элементов управления в виде массива.

validator

ValidatorFn | null

Возвращает функцию, используемую для синхронного определения допустимости этого элемента управления. Если добавлено несколько валидаторов, это будет одна составная функция. Дополнительные сведения см. в разделе Validators.compose().

validator

ValidatorFn | null

asyncValidator

AsyncValidatorFn | null

Возвращает функцию, используемую для асинхронного определения допустимости этого элемента управления. Если добавлено несколько валидаторов, это будет одна составная функция. Дополнительные сведения см. в разделе Validators.compose().

asyncValidator

AsyncValidatorFn | null

parent

FormGroup<any> | FormArray<any> | null

Родительский элемент управления.

status

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

boolean

True, если элемент управления помечен как touched.

Элемент управления помечается как touched после того, как пользователь вызвал для него событие blur.

untouched

boolean

True, если элемент управления не был помечен как 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().

@paramvalidatorsValidatorFn | ValidatorFn[] | null
@returnsvoid

setAsyncValidators

void

Задает асинхронные валидаторы, активные для этого элемента управления. При вызове заменяются все существующие асинхронные валидаторы.

При добавлении или удалении валидатора во время выполнения необходимо вызвать updateValueAndValidity(), чтобы новые правила проверки вступили в силу.

Если нужно добавить новый валидатор, не затрагивая существующие, рассмотрите возможность использования метода addAsyncValidators().

@paramvalidatorsAsyncValidatorFn | AsyncValidatorFn[] | null
@returnsvoid

addValidators

void

Добавляет к этому элементу управления один или несколько синхронных валидаторов, не затрагивая другие валидаторы.

При добавлении или удалении валидатора во время выполнения необходимо вызвать updateValueAndValidity(), чтобы новые правила проверки вступили в силу.

Добавление уже существующего валидатора не даст эффекта. Если в массиве validators присутствуют повторяющиеся функции-валидаторы, в элемент управления формы будет добавлен только первый экземпляр.

@paramvalidatorsValidatorFn | ValidatorFn[]

Новая функция-валидатор или функции-валидаторы, которые нужно добавить к этому элементу управления.

@returnsvoid

addAsyncValidators

void

Добавляет к этому элементу управления один или несколько асинхронных валидаторов, не затрагивая другие валидаторы.

При добавлении или удалении валидатора во время выполнения необходимо вызвать updateValueAndValidity(), чтобы новые правила проверки вступили в силу.

Добавление уже существующего валидатора не даст эффекта.

@paramvalidatorsAsyncValidatorFn | AsyncValidatorFn[]

Новая асинхронная функция-валидатор или функции-валидаторы, которые нужно добавить к этому элементу управления.

@returnsvoid

removeValidators

void

Удаляет синхронный валидатор из этого элемента управления, не затрагивая другие валидаторы. Валидаторы сравниваются по ссылке на функцию; необходимо передать ссылку именно на ту функцию-валидатор, которая была задана изначально. Если указанный валидатор не найден, он игнорируется.

@paramvalidatorsValidatorFn | ValidatorFn[]

Валидатор или валидаторы, которые нужно удалить.

@returnsvoid
Примечания по использованию
// 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(), чтобы новые правила проверки вступили в силу.

@paramvalidatorsAsyncValidatorFn | AsyncValidatorFn[]

Асинхронный валидатор или валидаторы, которые нужно удалить.

@returnsvoid

hasValidator

boolean

Проверяет, присутствует ли в этом элементе управления функция синхронного валидатора. Указанный валидатор должен быть ссылкой именно на ту функцию, которая была задана ранее.

@paramvalidatorValidatorFn

Валидатор, наличие которого нужно проверить. Сравнение выполняется по ссылке на функцию.

@returnsboolean

Найден ли указанный валидатор в этом элементе управления.

Примечания по использованию
// 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

Проверяет, присутствует ли в этом элементе управления функция асинхронного валидатора. Указанный валидатор должен быть ссылкой именно на ту функцию, которая была задана ранее.

@paramvalidatorAsyncValidatorFn

Асинхронный валидатор, наличие которого нужно проверить. Сравнение выполняется по ссылке на функцию.

@returnsboolean

Найден ли указанный асинхронный валидатор в этом элементе управления.

clearValidators

void

Очищает список синхронных валидаторов.

При добавлении или удалении валидатора во время выполнения необходимо вызвать updateValueAndValidity(), чтобы новые правила проверки вступили в силу.

@returnsvoid

clearAsyncValidators

void

Очищает список асинхронных валидаторов.

При добавлении или удалении валидатора во время выполнения необходимо вызвать updateValueAndValidity(), чтобы новые правила проверки вступили в силу.

@returnsvoid

markAsTouched

2 перегрузки

Помечает элемент управления как touched. Элемент управления считается затронутым при событиях фокуса и потери фокуса, которые не изменяют значение.

@paramopts{ onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; } | undefined

Параметры конфигурации, определяющие, как элемент управления распространяет изменения и генерирует события после применения пометки.

  • onlySelf: если значение равно true, помечается только этот элемент управления. Если значение равно false или параметр не указан, помечаются все непосредственные предки. Значение по умолчанию — false.
  • emitEvent: если значение равно true или параметр не указан (значение по умолчанию), observable events генерирует TouchedChangeEvent, у которого свойство touched имеет значение true. Если значение равно false, события не генерируются.
@returnsvoid
@paramopts{ onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; sourceControl?: AbstractControl<any, any, any> | undefined; } | undefined
@returnsvoid

markAllAsDirty

void

Помечает этот элемент управления и все его дочерние элементы управления как dirty.

@paramopts{ emitEvent?: boolean | undefined; }

Параметры конфигурации, определяющие, как элемент управления распространяет изменения и генерирует события после применения пометки.

  • emitEvent: если значение равно true или параметр не указан (значение по умолчанию), observable events генерирует PristineChangeEvent, у которого свойство pristine имеет значение false. Если значение равно false, события не генерируются.
@returnsvoid

markAllAsTouched

void

Помечает этот элемент управления и все его дочерние элементы управления как touched.

@paramopts{ emitEvent?: boolean | undefined; }

Параметры конфигурации, определяющие, как элемент управления распространяет изменения и генерирует события после применения пометки.

  • emitEvent: если значение равно true или параметр не указан (значение по умолчанию), observable events генерирует TouchedChangeEvent, у которого свойство touched имеет значение true. Если значение равно false, события не генерируются.
@returnsvoid

markAsUntouched

2 перегрузки

Помечает элемент управления как untouched.

Если у элемента управления есть дочерние элементы, они также помечаются как untouched, а статус touched всех родительских элементов управления пересчитывается.

@paramopts{ onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; } | undefined

Параметры конфигурации, определяющие, как элемент управления распространяет изменения и генерирует события после применения пометки.

  • onlySelf: если значение равно true, помечается только этот элемент управления. Если значение равно false или параметр не указан, помечаются все непосредственные предки. Значение по умолчанию — false.
  • emitEvent: если значение равно true или параметр не указан (значение по умолчанию), observable events генерирует TouchedChangeEvent, у которого свойство touched имеет значение false. Если значение равно false, события не генерируются.
@returnsvoid
@paramopts{ onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; sourceControl?: AbstractControl<any, any, any> | undefined; }
@returnsvoid

markAsDirty

2 перегрузки

Помечает элемент управления как dirty. Элемент управления становится dirty, когда его значение изменяется через пользовательский интерфейс; сравните с markAsTouched.

@paramopts{ onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; } | undefined

Параметры конфигурации, определяющие, как элемент управления распространяет изменения и генерирует события после применения пометки.

  • onlySelf: если значение равно true, помечается только этот элемент управления. Если значение равно false или параметр не указан, помечаются все непосредственные предки. Значение по умолчанию — false.
  • emitEvent: если значение равно true или параметр не указан (значение по умолчанию), observable events генерирует PristineChangeEvent, у которого свойство pristine имеет значение false. Если значение равно false, события не генерируются.
@returnsvoid
@paramopts{ onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; sourceControl?: AbstractControl<any, any, any> | undefined; }
@returnsvoid

markAsPristine

2 перегрузки

Помечает элемент управления как pristine.

Если у элемента управления есть дочерние элементы, они помечаются как pristine, а статус pristine всех родительских элементов управления пересчитывается.

@paramopts{ onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; } | undefined

Параметры конфигурации, определяющие, как элемент управления генерирует события после применения пометки.

  • onlySelf: если значение равно true, помечается только этот элемент управления. Если значение равно false или параметр не указан, помечаются все непосредственные предки. Значение по умолчанию — false.
  • emitEvent: если значение равно true или параметр не указан (значение по умолчанию), observable events генерирует PristineChangeEvent, у которого свойство pristine имеет значение true. Если значение равно false, события не генерируются.
@returnsvoid
@paramopts{ onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; sourceControl?: AbstractControl<any, any, any> | undefined; }
@returnsvoid

markAsPending

2 перегрузки

Помечает элемент управления как pending.

Элемент управления находится в ожидании, пока выполняется его асинхронная проверка.

@paramopts{ onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; } | undefined

Параметры конфигурации, определяющие, как элемент управления распространяет изменения и генерирует события после установки отметки.

  • onlySelf: Если значение равно true, помечается только этот элемент управления. Если значение равно false или не указано, помечаются все непосредственные предки. Значение по умолчанию — false.
  • emitEvent: Если значение равно true или не указано (по умолчанию), наблюдаемый объект statusChanges генерирует событие с последним статусом, когда элемент управления помечен как ожидающий, а наблюдаемый объект events генерирует событие StatusChangeEvent, у которого свойству status присвоено значение PENDING. Если значение равно false, события не генерируются.
@returnsvoid
@paramopts{ onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; sourceControl?: AbstractControl<any, any, any> | undefined; }
@returnsvoid

disable

2 перегрузки

Отключает элемент управления. Это означает, что он не участвует в проверках валидности и исключается из совокупного значения любого родительского элемента. Его статус — DISABLED.

Если у элемента управления есть дочерние элементы, они также отключаются.

@paramopts{ onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; } | undefined

Параметры конфигурации, определяющие, как элемент управления распространяет изменения и генерирует события после отключения.

  • onlySelf: Если значение равно true, помечается только этот элемент управления. Если значение равно false или не указано, помечаются все непосредственные предки. Значение по умолчанию — false.
  • emitEvent: Если значение равно true или не указано (по умолчанию), наблюдаемые объекты statusChanges, valueChanges и events генерируют события с последними статусом и значением при отключении элемента управления. Если значение равно false, события не генерируются.
@returnsvoid
@paramopts{ onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; sourceControl?: AbstractControl<any, any, any> | undefined; }
@returnsvoid

enable

void

Включает элемент управления. Это означает, что он участвует в проверках валидности и учитывается в совокупном значении родительского элемента. Его статус пересчитывается на основе его значения и валидаторов.

По умолчанию, если у элемента управления есть дочерние элементы, они также включаются.

@paramopts{ onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; }

Параметры конфигурации, определяющие, как элемент управления распространяет изменения и генерирует события при пометке как нетронутого.

  • onlySelf: Если значение равно true, помечается только этот элемент управления. Если значение равно false или не указано, помечаются все непосредственные предки. Значение по умолчанию — false.
  • emitEvent: Если значение равно true или не указано (по умолчанию), наблюдаемые объекты statusChanges, valueChanges и events генерируют события с последними статусом и значением при включении элемента управления. Если значение равно false, события не генерируются.
@returnsvoid

setParent

void

Задает родительский элемент управления.

@paramparentFormGroup<any> | FormArray<any> | null

Новый родительский элемент.

@returnsvoid

setValue

void

Задает значение элемента управления. Абстрактный метод (реализуется в подклассах).

@paramvalueTRawValue
@paramoptionsObject | undefined
@returnsvoid

patchValue

void

Частично задает значение элемента управления. Абстрактный метод (реализуется в подклассах).

@paramvalueTValue
@paramoptionsObject | undefined
@returnsvoid

reset

void

Сбрасывает элемент управления. Абстрактный метод (реализуется в подклассах).

@paramvalueTValueWithOptionalControlStates | undefined
@paramoptionsObject | undefined
@returnsvoid

getRawValue

any

Необработанное значение этого элемента управления. Для большинства реализаций элементов управления необработанное значение включает отключенные дочерние элементы.

@returnsany

updateValueAndValidity

2 перегрузки

Пересчитывает значение и статус валидности элемента управления.

По умолчанию также обновляются значение и валидность его предков.

@paramopts{ onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; } | undefined

Параметры конфигурации определяют, как элемент управления распространяет изменения и генерирует события после применения обновлений и проверок валидности.

  • onlySelf: Если значение равно true, обновляется только этот элемент управления. Если значение равно false или не указано, обновляются все непосредственные предки. Значение по умолчанию — false.
  • emitEvent: Если значение равно true или не указано (по умолчанию), наблюдаемые объекты statusChanges, valueChanges и events генерируют события с последними статусом и значением при обновлении элемента управления. Если значение равно false, события не генерируются.
@returnsvoid
@paramopts{ onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; sourceControl?: AbstractControl<any, any, any> | undefined; }
@returnsvoid

setErrors

2 перегрузки

Задает ошибки элемента управления формы при выполнении проверок вручную, а не автоматически.

Вызов setErrors также обновляет валидность родительского элемента управления.

Примечание. Ошибки, заданные вручную, всегда перезаписываются результатами следующего запуска проверки.

@paramerrorsValidationErrors | null
@paramopts{ emitEvent?: boolean | undefined; } | undefined

Параметры конфигурации, определяющие, как элемент управления распространяет изменения и генерирует события после задания ошибок элемента управления.

  • emitEvent: Если значение равно true или не указано (по умолчанию), наблюдаемый объект statusChanges генерирует событие после задания ошибок.
@returnsvoid
Примечания по использованию

Задание ошибок элемента управления вручную

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);
@paramerrorsValidationErrors | null
@paramopts{ emitEvent?: boolean | undefined; shouldHaveEmitted?: boolean | undefined; } | undefined
@returnsvoid

get

2 перегрузки

Возвращает дочерний элемент управления по его имени или пути.

Эта сигнатура метода get поддерживает строки и массивы const (.get(['foo', 'bar'] as const)).

@parampathP
@returnsAbstractControl<ɵGetProperty<TRawValue, P>, ɵGetProperty<TRawValue, P>, any> | null

Возвращает дочерний элемент управления по его имени или пути.

Эта сигнатура метода get поддерживает массивы, не являющиеся константными (изменяемые). Вывод информации о типах будет менее точным, поэтому по возможности следует передавать массив readonly.

@parampathP
@returnsAbstractControl<ɵGetProperty<TRawValue, P>, ɵGetProperty<TRawValue, P>, any> | null

getError

any

Возвращает данные об ошибке для элемента управления, заданного указанным путем.

@paramerrorCodestring

Код ошибки для проверки

@parampathstring | (string | number)[] | undefined

Список имен элементов управления, определяющий путь от текущего элемента управления к элементу, для которого нужно проверить ошибки.

@returnsany

Данные об указанной ошибке. Если элемент управления или ошибка отсутствует, возвращается null.

Примечания по использованию

Например, для следующей FormGroup:

form = new FormGroup({
  address: new FormGroup({ street: new FormControl() })
});

Путь от корневой формы к элементу управления 'street' будет таким: 'address' -> 'street'.

Его можно передать этому методу в одном из двух форматов:

  1. Массив строк с именами элементов управления, например ['address', 'street']
  2. Разделенный точками список имен элементов управления в одной строке, например 'address.street'

hasError

boolean

Проверяет, есть ли у элемента управления, заданного указанным путем, указанная ошибка.

@paramerrorCodestring

Код ошибки для проверки

@parampathstring | (string | number)[] | undefined

Список имен элементов управления, определяющий путь от текущего элемента управления к элементу, для которого нужно проверить ошибки.

@returnsboolean

Наличие указанной ошибки у элемента управления по указанному пути.

Если элемент управления отсутствует, возвращается false.

Примечания по использованию

Например, для следующей FormGroup:

form = new FormGroup({
  address: new FormGroup({ street: new FormControl() })
});

Путь от корневой формы к элементу управления 'street' будет таким: 'address' -> 'street'.

Его можно передать этому методу в одном из двух форматов:

  1. Массив строк с именами элементов управления, например ['address', 'street']
  2. Разделенный точками список имен элементов управления в одной строке, например '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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API