【发布时间】:2021-03-08 18:11:47
【问题描述】:
我希望从验证器数组中删除特定的验证器,以便在某些值发生更改时再次设置控件。
我知道需要一次又一次设置验证器的常规解决方案。
checked(event: MatCheckboxClickAction): void {
const control = (this.form.get(
'information',
) as FormGroup).controls.data1;
if (event) {
this.updateRequiredValidator(control);
} else {
control.setValidators([
Validators.maxLength(9), Validators.minLength(2)
]);
control.updateValueAndValidity();
}
}
updateRequiredValidator(control: AbstractControl): void {
control.setValidators([
Validators.required,
...(control?.validator ? [control?.validator as ValidatorFn] : []),
]);
control.updateValueAndValidity();
}
我只想删除 else 部分的 Validators.required,而不是一次又一次地设置验证器。
【问题讨论】:
标签: javascript angular typescript angular-reactive-forms