Angular 2 中的条件验证

2024-03-20

Angular 2 中的验证非常简单,这非常棒。然而,如果选择了其他字段,如何将必填字段设置为可选字段。

这是我的规则

this.contractsFilter = this.fb.group({
  selectedContractType: ['', [Validators.required]],
  selectedYear: ['', [Validators.required]],
  selectedPde: ['', [Validators.required]],
  refNo: ['', []]
});

如果用户提供了 refNo,我希望将其他字段标记为“非必需”。


以下是如何动态添加或删除某些控件的验证器

private addValidator(control, validator) {
    let existingValidators = control.validator;
    control.setValidators(Validators.compose([existingValidators, validator]));
    control.updateValueAndValidity();
  }

并删除验证器

  private removeRequiredValidator(control, otherValidators) {
    control.clearValidators();
    if (otherValidators) {
      control.setValidators(otherValidators);
    }
    control.updateValueAndValidity();
  }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Angular 2 中的条件验证 的相关文章

随机推荐