Próbuję przeprowadzić niestandardową weryfikację w Angular 5, ale mam następujący błąd
Expected validator to return Promise or Observable
Chcę tylko zwrócić błąd do formularza, jeśli wartość nie pasuje do wymaganego, oto mój kod:
To jest komponent, w którym jest moja forma
constructor(fb: FormBuilder, private cadastroService:CadastroService) {
this.signUp = fb.group({
"name": ["", Validators.compose([Validators.required, Validators.minLength(2)])],
"email": ["", Validators.compose([Validators.required, Validators.email])],
"phone": ["", Validators.compose([Validators.required, Validators.minLength(5)])],
"cpf": ["", Validators.required, ValidateCpf]
})
}
Ten kod znajduje się w pliku z walidacją, którą chcę zaimplementować:
import { AbstractControl } from '@angular/forms';
export function ValidateCpf(control: AbstractControl){
if (control.value == 13445) {
return {errorCpf: true}
}
return null;
}
Czy ktoś może mi pomóc? Czy ten rodzaj walidacji działa tylko z obserwowalnymi, czy mogę to zrobić bez obietnicy lub obserwowalności? dzięki