在Angular中的响应式表单中进行密码匹配验证。

14 浏览
0 Comments

在Angular中的响应式表单中进行密码匹配验证。

我有两个输入(`newPassword` 和 `confirmPassword`),它们必须通过匹配进行验证。

我在`reset-password.component`中定义了`resetPasswordFormGroup`。

当我在`formgroup`中使用`MustMatch`自定义验证器时,我会得到以下错误。

实际上,我对如何使用自定义验证器感到困惑。

类型“{ validator: (formGroup: FormGroup) => void; }”的参数不能赋给类型“ValidatorFn | ValidatorFn[] | AbstractControlOptions”的参数。

对象文字只能指定已知属性,而“validator”在类型“ValidatorFn | ValidatorFn[] | AbstractControlOptions”中不存在.ts(2345)

resetPasswordFormGroup = new FormGroup({
    currentPassword: new FormControl(null, Validators.required),
    newPassword: new FormControl(null, Validators.required),
    confirmNewPassword: new FormControl(null, Validators.required),
});
get currentPasswordFormControl() {
    return this.resetPasswordFormGroup.get('currentPassword');
}
get newPasswordFormControl() {
    return this.resetPasswordFormGroup.get('newPassword');
}
get confirmNewPasswordFormControl() {
    return this.resetPasswordFormGroup.get('confirmNewPassword');
}

当前密码是必填项 新密码是必填项 确认新密码是必填项

[图片链接](https://i.stack.imgur.com/acG7C.jpg)

0