我正在尝试formGroup
根据特定条件在控件中添加和删除验证器。
当我通过formGroup.updateValueAndValidity()
整个表单更新验证器时,它没有更新,就好像我专门为每个控件申请一样formGroup.get('formControl').updateValueAndValidity()
,它正在工作,但我必须为每个控件编写,我希望这不是正确的方法。我究竟做错了什么?
if (data == 'x') {
this.myForm.get('control2').setValue(null);
this.myForm.get('control2').setValidators(Validators.nullValidator);
this.myForm.get('control1').setValidators(Validators.required);
} else if (data == 'y') {
this.myForm.get('control1').setValue(null);
this.myForm.get('control1').setValidators(Validators.nullValidator);
this.myForm.get('control2').setValidators(Validators.required);
}
this.myForm.get('control1').updateValueAndValidity();
this.myForm.get('control2').updateValueAndValidity();
这是有效的,但是,
this.myForm.updateValueAndValidity();
这是行不通的。