AsyncValidator
interface
An interface implemented by classes that perform asynchronous validation.
interface AsyncValidator extends Validator { validate(control: AbstractControl): Promise<ValidationErrors | null> | Observable<ValidationErrors | null> // inherited from forms/Validator validate(control: AbstractControl): ValidationErrors | null registerOnValidatorChange(fn: () => void)?: void }
Methods
validate() | ||
---|---|---|
Method that performs async validation against the provided control. | ||
|
control | Type: |
Returns
Promise<ValidationErrors | null> | Observable<ValidationErrors | null>
: A promise or observable that resolves a map of validation errors if validation fails, otherwise null.
Usage notes
Provide a custom async validator directive
The following example implements the AsyncValidator
interface to create an async validator directive with a custom error key.
import { of as observableOf } from 'rxjs'; @Directive({ selector: '[customAsyncValidator]', providers: [{provide: NG_ASYNC_VALIDATORS, useExisting: CustomAsyncValidatorDirective, multi: true}] }) class CustomAsyncValidatorDirective implements AsyncValidator { validate(control: AbstractControl): Observable<ValidationErrors|null> { return observableOf({'custom': true}); } }
© 2010–2019 Google, Inc.
Licensed under the Creative Commons Attribution License 4.0.
https://v6.angular.io/api/forms/AsyncValidator