비동기 유효성 검사기는 프로미스나 옵저버블을 반환해야 하며, 유효성 검사가 실패하든 성공하든 값을 방출하거나 프로미스를 완료해야 합니다. 특히 AsyncValidatorFn API를 구현해야 합니다.
export function isTenAsync(control: AbstractControl): Observable<ValidationErrors | null> {
const v: number = control.value;
if (v !== 10) {
// 유효성 검사 오류가 담긴 객체를 방출합니다.
return of({'notTen': true, 'requiredValue': 10});
}
// 오류가 없음을 나타내는 null을 방출합니다.
return of(null);
}
오류 디버깅
비동기 유효성 검사기 대신 동기 유효성 검사기를 잘못 사용하지 않았는지 확인하세요.