Я пытаюсь добавлять и удалять валидаторы в элементах управления 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();
Это не работает.