Async validators devem retornar uma promise ou um observable, e emitir/resolver eles quando a validação falha ou tem sucesso. Em particular, eles devem implementar a API AsyncValidatorFn
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); }
Depurando o erro
Você usou por engano um validator síncrono ao invés de um async validator?