要解决Angular FormGroup在禁用时变为dirty的问题,可以使用以下代码示例中的解决方法:
import { Component } from '@angular/core';
import { FormGroup, FormControl } from '@angular/forms';
@Component({
selector: 'app-root',
template: `
`,
})
export class AppComponent {
disabledDirtyFormGroup(): FormGroup {
const formGroup = new FormGroup({
name: new FormControl({ value: '', disabled: true }),
});
formGroup.markAsDirty();
return formGroup;
}
}
通过以上代码,禁用的表单控件将被设置为dirty状态,这意味着当用户尝试提交表单时,表单将会被认为是已更改的状态,即使它是禁用的。