我在一个离子项目中工作。当使用angular reactive form时,自定义validation.It抛出未捕获的值:无法读取null的属性‘TypeError’
this.signup = this.formBuilder.group({
name: ['', Validators.compose([Validators.required, ValidateName])],
email: ['', Validators.compose([Validators.required, ValidateEmail])],
mobile: [
'',
Validators.compose([
Validators.required,
Validators.minLength(10),
Validators.maxLength(15),
ValidateMobile
])
],
password: [
'2',
Validators.compose([Validators.required, Validators.minLength(6)])
],
cpassword: [
'1',
Validators.compose([
Validators.required,
Validators.minLength(6),
passwordValidat.bind(this)
])
]
});
}
passwordValidat(control: AbstractControl) {
if (control.get('password').value === control.get('cpassword').value) {
return { invalid: true };
}
return { validUrl: true };
}
当我试图运行这段代码时,得到了这样的错误
core.js:1449错误错误:未捕获(在promise中):TypeError:无法读取null的属性'value‘TypeError:无法在forms.js:759
的 (signup.ts:71)读取null的属性'value’
发布于 2018-06-10 04:02:01
passwordValidat(control: AbstractControl) {
const pwd = control.get('password');
const cpwd = control.get('cpassword');
console.log('pwd: ', pwd);
console.log('cpwd: ', cpwd);
if(pwd && cpwd) {
if( pwd.value === cpwd.value ) {
return { invalid: true };
}
return { validUrl: true };
}
} else {
return { invalid: true };
}
}
https://stackoverflow.com/questions/50775773
复制相似问题