Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/382.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 自定义验证错误_Javascript_Angular - Fatal编程技术网

Javascript 自定义验证错误

Javascript 自定义验证错误,javascript,angular,Javascript,Angular,我正在为我的表单构建自定义验证。这是一个简单的,它应该检查密码和确认密码是否匹配 问题是,即使我相信逻辑是正确的,我也得到了与我想要的相反的结果 initForm() { this.registerForm = new FormGroup({ email: new FormControl('', [Validators.required, Validators.email]), password: new FormControl('

我正在为我的表单构建自定义验证。这是一个简单的,它应该检查密码和确认密码是否匹配

问题是,即使我相信逻辑是正确的,我也得到了与我想要的相反的结果

initForm() {
        this.registerForm = new FormGroup({
            email: new FormControl('', [Validators.required, Validators.email]),
            password: new FormControl('', [Validators.required]),
            confirmPassword: new FormControl('', [Validators.required])
        }, { validators: this.customValidators });
    }

    customValidators(c: AbstractControl) {
        const mainPass = c.get('password').value;
        const confirmPass = c.get('confirmPassword').value;

        return mainPass === confirmPass ? { status: 'VALID' } : null;
    }
在HTML的我的按钮上,我有:

寄存器


有人能帮我解开这个谜吗?谢谢

应该扭转这种情况

customValidators(c: AbstractControl) {
    const mainPass = c.get('password').value;
    const confirmPass = c.get('confirmPassword').value;

    return mainPass === confirmPass ? null : { 'inValid' : true };
}

这种情况应该扭转

customValidators(c: AbstractControl) {
    const mainPass = c.get('password').value;
    const confirmPass = c.get('confirmPassword').value;

    return mainPass === confirmPass ? null : { 'inValid' : true };
}

当mainPass!=confirmPass这可能是问题当mainPass!=confirmPass这可能就是问题所在