加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

angular – Async Validator Throw Expected validator返回Promi

发布时间:2020-12-17 07:32:59 所属栏目:安全 来源:网络整理
导读:我试图用密码值确认密码.我按照Async验证器标准完成了.但我想知道它没有工作,并给我以下错误.请告诉任何人如何解决此错误. Expected validator to return Promise or Observable. 这是我的代码. 呼叫验证器: cPass: ['',Validators.compose([ Validators.re
我试图用密码值确认密码.我按照Async验证器标准完成了.但我想知道它没有工作,并给我以下错误.请告诉任何人如何解决此错误.

Expected validator to return Promise or Observable.

这是我的代码.

呼叫验证器:

cPass: ['',Validators.compose([
  Validators.required,Validators.maxLength(32),Validators.minLength(10)
]),this.validPassword.bind(this)
]

自定义验证功能:

validPassword(control: AbstractControl) {            
  const isEqual = Observable.of(this.password == control.value);
  return isEqual ? { valid : true } : null;         
}
这个错误说明了一切:

Expected validator to return Promise or Observable.

你在函数中返回对象| null.

只需将其更改为:

validPassword(control: AbstractControl) {
  return observableOf('12345678910' === control.value).pipe(
    map(result => result ? { invalid: true } : null)
  );
}

STABKBLITZ DEMO

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读