我正在尝试验证密码是否足够长,但是它发送此错误。 我正在验证电子邮件的相同方式,但没有任何问题..
ngOnInit() {
this.registerForm = this.fb.group({
username: ['', Validators.required],
email: ['', [Validators.required,
Validators.pattern('[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,3}$')]],
password: ['', Validators.required, Validators.minLength(4)],
confirmpwd: ['', Validators.required, Validators.minLength(4)],
birthday: ['', Validators.required]
});
}
ERROR Error: Expected validator to return Promise or Observable.
<div *ngIf="password.invalid && password.touched">
<p *ngIf="password.errors?.required">
Choose a password
</p>
<p *ngIf="password.errors?.minlength">
The password is too short
</p>
</div>
答案 0 :(得分:2)
更改此:
password: ['', Validators.required, Validators.minLength(4)],
对此:
password: ['', [Validators.required, Validators.minLength(4)]],
将验证器添加到数组。
因此,您列出的第二个验证器被当作异步验证器处理。
您还需要对其他formControl进行此更改。 (该电子邮件实际上是正确的。)