Async validators must return a promise or an observable, and emit/resolve them whether the validation fails or succeeds. In particular, they must implement the AsyncValidatorFn API
export function isTenAsync(control: AbstractControl): Observable<ValidationErrors> | null { const v: number = control.value; if (v !== 10) { // Emit an object with a validation error. return of({ 'notTen': true, 'requiredValue': 10 }); } // Emit null, to indicate no error occurred. return of(null); }
Did you mistakenly use a synchronous validator instead of an async validator?
© 2010–2022 Google, Inc.
Licensed under the Creative Commons Attribution License 4.0.
https://angular.io/errors/NG1003