angular – Async Validator Throw Expected validator返回Promise或Observable

我试图用密码值确认密码.我按照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

相关文章

ANGULAR.JS:NG-SELECTANDNG-OPTIONSPS:其实看英文文档比看中...
AngularJS中使用Chart.js制折线图与饼图实例  Chart.js 是...
IE浏览器兼容性后续前言 继续尝试解决IE浏览器兼容性问题,...
Angular实现下拉菜单多选写这篇文章时,引用文章地址如下:h...
在AngularJS应用中集成科大讯飞语音输入功能前言 根据项目...
Angular数据更新不及时问题探讨前言 在修复控制角标正确变...