我正在尝试创建一个应用于表单组级别的自定义验证器,而不是在每个字段级别重复该操作。
以下代码未返回期望值。您能否提出实施的正确方法?
预先感谢
CustomValidator:
export function forbiddenValidator(fields:string[],pattern:RegExp){
return (form :FormGroup) : {[key:string] :any} | null =>{
return fields.reduce(function(acc,cv){
return pattern.test(form.get(cv).value) ? {'forbidden':{field:cv,value : form.get(cv).value}} : null
},{})
}
}
注册组件
this.registrationForm = this.fb.group({
username: [''],
password: ['']
},{
validators: [forbiddenValidator(['username','password'],/admin/)]
})