我正在尝试使用中的disabled
属性formControl
。当我将其放在模板中时,它可以工作:
<md-input formControlName="id" placeholder="ID" [disabled]="true"></md-input>
但是浏览器提醒我:
看起来您正在使用带有反应形式指令的Disabled属性。如果在组件类中设置此控件时将Disabled设置为true,则实际上将在DOM中为您设置disabled属性。我们建议使用这种方法来避免“检查后更改”错误。
Example: form = new FormGroup({ first: new FormControl({value: 'Nancy', disabled: true}, Validators.required), last: new FormControl('Drew', Validators.required) });
因此,我将其放在中FormControl
,并从模板中删除:
constructor(private itemsService: ItemsService) {
this._items = [];
this.myForm = new FormGroup({
id: new FormControl({value: '', disabled: true}, Validators.required),
title: new FormControl(),
description: new FormControl()
});
this.id = this.myForm.controls['id'];
this.title = this.myForm.controls['title'];
this.description = this.myForm.controls['description'];
this.id.patchValue(this._items.length);
}
但是它不起作用(它没有禁用input
)。问题是什么?