【问题标题】:Set multiple validator - Angular Reactive Form设置多个验证器 - Angular Reactive Form
【发布时间】:2020-09-22 14:32:06
【问题描述】:

我试图在控件初始化后设置多个验证器,但它似乎没有添加验证器。

代码:

 this.infoForm.controls['email'].setValidators(this.DynamicValidation(validations));

 DynamicValidation(list: Array<string>): Array<ValidatorFn> {
  const validators: Array<ValidatorFn> = [];
  list.forEach((validator: string) => {
      if (validator === 'required') {
          validators.push(Validators.required);
          return;
        }
         // other validators implementation
    }
 }

另外,有没有办法用像这样的标志设置自定义验证器名称“validators.push({ isMatching:false }”。?

【问题讨论】:

  • 你必须在 foreach 块之后返回创建的数组:return validators;
  • 如果我想设置自定义验证器,是否可以使用 validators.push({'isMatching':false) ?

标签: angular reactive-forms


【解决方案1】:

试试这个:

 this.infoForm.controls['email'].setValidators(this.DynamicValidation(validations));

 DynamicValidation(list: Array<string>): Array<ValidatorFn> {
  const validators: Array<ValidatorFn> = [];
  list.forEach((validator: string) => {
      if (validator === 'required') {
          validators.push(Validators.required);
          return validators;
        }
         // other validators implementation
    }
 }

【讨论】:

  • 如果我想设置自定义验证器,是否可以使用 validators.push({'isMatching':false) ?
猜你喜欢
  • 2018-07-01
  • 2018-10-12
  • 1970-01-01
  • 2018-08-09
  • 2020-06-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多