我有一个FormGroup
的定义如下:
this.businessFormGroup: this.fb.group({
'businessType': ['', Validators.required],
'description': ['', Validators.compose([Validators.required, Validators.maxLength(200)])],
'income': ['']
})
现在,当businessType
是Other
时,我想从description
中删除Validators.required
验证器.如果businessType
不是Other
,我想把Validators.required
加回go .
我使用下面的代码动态添加/删除Validators.required
.但是,它清除了现有的Validators.maxLength
验证器.
if(this.businessFormGroup.get('businessType').value !== 'Other'){
this.businessFormGroup.get('description').validator = <any>Validators.compose([Validators.required]);
} else {
this.businessFormGroup.get('description').clearValidators();
}
this.businessFormGroup.get('description').updateValueAndValidity();
我的问题是,在添加/删除required
验证器时,如何保留现有的验证器.