0

我们如何使用 angular2 验证来确认密码?我正在使用 angular 2.0 final。

我正在为模型驱动表单使用 formbuilder 类,如下所示:

    this.myForm = this.fb.group({
      name: ['', Validators.compose([Validators.required])],
      email: [''],
      passwordgroup: this.fb.group({
        password: ['', Validators.compose([Validators.required])],
        confirm_password: ['', Validators.compose([])]
      })
    });
  

4

2 回答 2

3

您可以通过将此函数添加到您的组件来简单地使用自定义验证器,如下所示

 import { AbstractControl } from '@angular/forms';

    function passwordConfirming(c: AbstractControl) {
        return c.get('password').value === c.get(' confirm_password').value

this.myForm = this.fb.group({
      name: ['', Validators.compose([Validators.required])],
      email: [''],
      passwordgroup: this.fb.group({
        password: ['', Validators.compose([Validators.required])],
        confirm_password: ['', Validators.compose([])]
      },  { validator: passwordConfirming })
    });
于 2016-10-12T18:29:09.560 回答
1
this.myForm = this.fb.group({
      name: ['', Validators.compose([Validators.required])],
      email: [''],
      passwordgroup: this.fb.group({
        password: ['', Validators.compose([Validators.required])],
        confirm_password: ['', Validators.compose([])]
      },  passwordConfirming)
    });

删除上面的 'validator' 键(取消此对象表示法)并仅使用验证器名称 'passwordConfirming' 没有语法错误。

于 2017-03-25T19:39:30.123 回答