Angular 正式验证相同的输入

Angular Formly validating same input

我想验证是否有两个输入字段(电子邮件)并使用 Formly 验证它们 return 是否具有相同的值。到目前为止,我已经设法检查验证输入字段的值是否等于电子邮件字段。

vm.fields = [
  {
    key: 'email',
    type: 'input',
    templateOptions: {
      label: 'Email'
    }
  },
  {
    key: 'validateEmail',
    type: 'input',
    templateOptions: {
      label: 'Validate Email',
    },
    validators:{
      macAddress: {
        expression: function(viewValue, modelValue, scope){
          return modelValue === scope.model["email"]; 
        }
      }
    }
  }
]; 

JSFiddle可以找到here

但是,此验证仅在填充第二个字段时发生。填写电子邮件时有没有办法进行此验证?

angular-formly 网站下已经有这样做的例子。请检查这个:

http://angular-formly.com/#/example/other/matching-two-fields

请注意,当前版本的 formly 有一个问题(我也在纠结)并试图找到解决方案。这是 issue on github,但它不应该影响您在这里要完成的工作。