没有名称为 'recipient' 的表单控件的值访问器
No value accessor for form control with name: 'recipient'
升级到 Angular 2 Rc.5 后出现此错误。
这是我的组件模板:
<md-input
[(ngModel)]="recipient"
name="recipient"
placeholder="Name"
class="col-sm-4"
(blur)="addRecipient(recipient)">
</md-input>
我的 app.module.ts 导入 FormsModule
我也尝试在我的组件中声明 private recipient;
。
我错过了什么吗?为什么会出现此错误?
No value accessor for form control with name: 'recipient'
确保您也导入了 MaterialModule,因为您使用的是不属于 FormsModule 的 md-input
您应该像这样将 ngDefaultControl 属性添加到您的输入中:
<md-input
[(ngModel)]="recipient"
name="recipient"
placeholder="Name"
class="col-sm-4"
(blur)="addRecipient(recipient)"
ngDefaultControl>
</md-input>
摘自 post 中的评论:
angular2 rc.5 custom input, No value accessor for form control with unspecified name
注意:对于@angular/material以后的版本:
现在你应该这样写:
<md-input-container>
<input
mdInput
[(ngModel)]="recipient"
name="recipient"
placeholder="Name"
(blur)="addRecipient(recipient)">
</md-input-container>
升级到 Angular 2 Rc.5 后出现此错误。 这是我的组件模板:
<md-input
[(ngModel)]="recipient"
name="recipient"
placeholder="Name"
class="col-sm-4"
(blur)="addRecipient(recipient)">
</md-input>
我的 app.module.ts 导入 FormsModule
我也尝试在我的组件中声明 private recipient;
。
我错过了什么吗?为什么会出现此错误?
No value accessor for form control with name: 'recipient'
确保您也导入了 MaterialModule,因为您使用的是不属于 FormsModule 的 md-input
您应该像这样将 ngDefaultControl 属性添加到您的输入中:
<md-input
[(ngModel)]="recipient"
name="recipient"
placeholder="Name"
class="col-sm-4"
(blur)="addRecipient(recipient)"
ngDefaultControl>
</md-input>
摘自 post 中的评论:
angular2 rc.5 custom input, No value accessor for form control with unspecified name
注意:对于@angular/material以后的版本:
现在你应该这样写:
<md-input-container>
<input
mdInput
[(ngModel)]="recipient"
name="recipient"
placeholder="Name"
(blur)="addRecipient(recipient)">
</md-input-container>