我将通过debounceTime调用API来验证电子邮件地址,社区中有解决方案。
new FormGroup({
firstName: new FormControl(cachedValue.firstName, [Validators.required]),
lastName: new FormControl(cachedValue.lastName, [Validators.required]),
email: new FormControl(cachedValue.email, [Validators.required, Validators.email],
[this.validateUniqueValueEmail]),
phone: new FormControl(+cachedValue.phone, [Validators.required],
[])
});
private validateUniqueValueEmail(control): Observable<ValidationErrors | null> {
return timer(500).pipe(
switchMap((res) => {
console.log(res);
return of({validationError: 'This email is already taken'});
}),
);
}
这应该可以,但是我遇到了以下错误。
core.js:14597错误TypeError:您提供了一个无效的对象,该对象应用于流。您可以提供一个Observable,Promise,Array或Iterable。