我需要在特定事件上禁用整个FormGroup
。
但是我注意到FormGroup
变成了dirty
。
由于我依靠此dirty
标志,有没有办法避免它?
我的意思是,禁用应该不使FormGroup
变成dirty
。
我正在使用FormGroup#disable
我的代码非常简单,这就是为什么我没有发布它的原因。无论如何,我只是将FormGroup
包装在一个对象中。
public set isDisabled(disabled: boolean) {
if (disabled) {
this.formGroup.disable()
} else {
this.formGroup.enable()
}
}
答案 0 :(得分:2)
经过反复试验,该解决方案似乎正在使用:
formGroup.disable({ emitEvent: false })
答案 1 :(得分:0)
您应该能够将控件重新设置为常规:https://angular.io/api/forms/AbstractControl#markaspristine
或按照Jitendra G2的建议使用markAsUntouched()。