Spec-Zone.ru › Angular 2

Абстрактный элемент управления

Stable Class

Что он делает

Это базовый класс для FormControl, FormGroup и FormArray.

Он предоставляет некоторое общее поведение, которым обладают все элементы управления и группы элементов управления, например, запуск валидаторов, вычисление состояния и сброс состояния. Он также определяет свойства, общие для всех подклассов, такие как value, valid, и dirty. Он не должен создаваться напрямую.

Обзор класса

class AbstractControl {
  constructor(validator: ValidatorFn, asyncValidator: AsyncValidatorFn)
  
  
  validator : ValidatorFn
  asyncValidator : AsyncValidatorFn
  value : any
  parent : FormGroup|FormArray
  status : string
  valid : boolean
  invalid : boolean
  pending : boolean
  disabled : boolean
  enabled : boolean
  errors : {[key: string]: any}
  pristine : boolean
  dirty : boolean
  touched : boolean
  untouched : boolean
  valueChanges : Observable<any>
  statusChanges : Observable<any>
  setValidators(newValidator: ValidatorFn|ValidatorFn[]) : void
  setAsyncValidators(newValidator: AsyncValidatorFn|AsyncValidatorFn[]) : void
  clearValidators() : void
  clearAsyncValidators() : void
  markAsTouched({onlySelf}?: {onlySelf?: boolean}) : void
  markAsUntouched({onlySelf}?: {onlySelf?: boolean}) : void
  markAsDirty({onlySelf}?: {onlySelf?: boolean}) : void
  markAsPristine({onlySelf}?: {onlySelf?: boolean}) : void
  markAsPending({onlySelf}?: {onlySelf?: boolean}) : void
  disable({onlySelf, emitEvent}?: {onlySelf?: boolean, emitEvent?: boolean}) : void
  enable({onlySelf, emitEvent}?: {onlySelf?: boolean, emitEvent?: boolean}) : void
  setParent(parent: FormGroup|FormArray) : void
  setValue(value: any, options?: Object) : void
  patchValue(value: any, options?: Object) : void
  reset(value?: any, options?: Object) : void
  updateValueAndValidity({onlySelf, emitEvent}?: {onlySelf?: boolean, emitEvent?: boolean}) : void
  setErrors(errors: {[key: string]: any}, {emitEvent}?: {emitEvent?: boolean}) : void
  get(path: Array<string|number>|string) : AbstractControl
  getError(errorCode: string, path?: string[]) : any
  hasError(errorCode: string, path?: string[]) : boolean
  root : AbstractControl
}

Описание класса

Конструктор

constructor(validator: ValidatorFn, asyncValidator: AsyncValidatorFn)

Подробности класса

validator : ValidatorFn
asyncValidator : AsyncValidatorFn
value : any

Значение элемента управления.

parent : FormGroup|FormArray

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

status : string

Состояние валидации элемента управления. Существует четыре возможных состояния валидации:

  • ВАЛИДНО: элемент управления прошел все проверки валидации
  • НЕВАЛИДНО: элемент управления не прошел хотя бы одну проверку валидации
  • ОЖИДАЕТСЯ: элемент управления находится в процессе проверки валидации
  • ВЫКЛЮЧЕН: элемент управления освобожден от проверок валидации

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

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.

Другими словами, у него статус VALID, INVALID, или PENDING.

errors : {[key: string]: any}

Возвращает любые ошибки, возникшие при провале валидации. Если ошибок нет, возвращает null.

pristine : boolean

Элемент управления считается pristine, если пользователь еще не изменил значение в пользовательском интерфейсе.

Обратите внимание, что программные изменения значения элемента управления не помечают его как изменённый.

dirty : boolean

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

Обратите внимание, что программные изменения значения элемента управления не помечают его как изменённый.

touched : boolean

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

untouched : boolean

Элемент управления считается untouched, если пользователь еще не инициировал событие blur на нем.

valueChanges : Observable<any>

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

statusChanges : Observable<any>

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

setValidators(newValidator: ValidatorFn|ValidatorFn[]) : void

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

setAsyncValidators(newValidator: AsyncValidatorFn|AsyncValidatorFn[]) : void

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

clearValidators() : void

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

clearAsyncValidators() : void

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

markAsTouched({onlySelf}?: {onlySelf?: boolean}) : void

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

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

markAsUntouched({onlySelf}?: {onlySelf?: boolean}) : void

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

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

markAsDirty({onlySelf}?: {onlySelf?: boolean}) : void

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

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

markAsPristine({onlySelf}?: {onlySelf?: boolean}) : void

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

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

markAsPending({onlySelf}?: {onlySelf?: boolean}) : void

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

disable({onlySelf, emitEvent}?: {onlySelf?: boolean, emitEvent?: boolean}) : void

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

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

enable({onlySelf, emitEvent}?: {onlySelf?: boolean, emitEvent?: boolean}) : void

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

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

setParent(parent: FormGroup|FormArray) : void
setValue(value: any, options?: Object) : void

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

patchValue(value: any, options?: Object) : void

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

reset(value?: any, options?: Object) : void

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

updateValueAndValidity({onlySelf, emitEvent}?: {onlySelf?: boolean, emitEvent?: boolean}) : void

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

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

setErrors(errors: {[key: string]: any}, {emitEvent}?: {emitEvent?: boolean}) : void

Устанавливает ошибки для элемента управления формой.

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

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

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);
get(path: Array<string|number>|string) : AbstractControl

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

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

Чтобы получить элемент управления, вложенный в подгруппу person,

  • this.form.get('person.name');

-ИЛИ-

  • this.form.get(['person', 'name']);
getError(errorCode: string, path?: string[]) : any

Возвращает true, если элемент управления с заданным путем имеет указанную ошибку. В противном случае возвращает null или undefined.

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

hasError(errorCode: string, path?: string[]) : boolean

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

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

root : AbstractControl

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

экспортировано из @angular/forms/index, определено в @angular/forms/src/model.ts

© 2010–2017 Google, Inc.
Licensed under the Creative Commons Attribution License 4.0.
https://v2.angular.io/docs/ts/latest/api/forms/index/AbstractControl-class.html

Spec-Zone.ru

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