我正在尝试使用formControl
中的disabled
属性。当我把它的模板,它的工作原理:无效表单 - 禁用属性
<md-input formControlName="id" placeholder="ID" [disabled]="true"></md-input>
但浏览器提醒我:
它看起来像你使用一个反应形式 指令禁用属性。如果在组件类中设置此控件时将禁用属性设置为true ,那么将禁用属性实际上设置为DOM中的 您。我们建议使用这种方法来避免“检查后更改”错误。
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);
}
但它不工作(它不禁止输入)。问题是什么?
这似乎只是正常工作,具有角2的当前版本: http://plnkr.co/edit/CQQtkYC9D5EoH0sAlNCV ?p = preview – silentsod
我正在使用最新的角度cli项目进行测试 – FacundoGFlores
您正在使用@ angular/material,因此,根据他们的github问题:https://github.com/angular/material2/issues/1171 它是尚未支持,并且它们处于alpha模式,因此您不能指望它功能完整。 – silentsod