无法绑定到“formGroup”,因为它不是“form”的已知属性

形势

我试图在我的角度应用程序中创建一个非常简单的形式,但不管怎样,它都不起作用

角度版本

角度2.0.0 RC5

错误

无法绑定到“formGroup”,因为它不是“form”的已知属性

代码

景色

<表格[formGroup]="“新任务形式”;(提交)=;createNewTask()&燃气轮机;
<div class="“表格组”&燃气轮机;
<标签for="名称“&燃气轮机;名称&lt/标签>
<输入类型="“文本”;名称=“名称”;名称“;必需的>
&lt/部门>
<按钮类型="提交;类别=“类”;btn btn默认值“&燃气轮机;提交&lt/按钮>
&lt/表格>

控制器

从'@angular/core'导入{Component};
从'@angular/forms'导入{FormGroup,FormControl,Validators,FormBuilder};
从'@angular/forms'导入{FormsModule,ReactiveFormsModule};
从“/Task”导入{Task};
@组成部分({
选择器:“任务添加”,
templateUrl:'app/task add.component.html'
})
导出类TaskAddComponent{
新askform:FormGroup;
构造函数(fb:FormBuilder)
{
this.newTaskForm=fb.group({
名称:[“验证器”,必填]
});
}
createNewTask()
{
log(this.newTaskForm.value)
}
}

NGD模块

从'@angular/core'导入{NgModule};
从“@angular/platform browser”导入{BrowserModule};
从'@angular/forms'导入{FormsModule};
从“/app.routing”导入{routing};
从“./app.component”导入{AppComponent};
从“/task.service”导入{TaskService}
@NGD模块({
进口:[
浏览器模块,
路由,
FormsModule
],
声明:[AppComponent],
供应商:[
任务服务
],
引导:[AppComponent]
})
导出类AppModule{}

问题

为什么我会犯这样的错误?我错过什么了吗

RC6/RC7/最终版本修复

要修复此错误,只需从模块中的@angular/forms导入ReactiveFormsModule。下面是带有ReactiveFormsModuleimport的基本模块示例:

从'@angular/core'导入{NgModule};
从“@angular/platform browser”导入{BrowserModule};
从'@angular/forms'导入{FormsModule,ReactiveFormsModule};
从“./app.component”导入{AppComponent};
@NGD模块({
进口:[
浏览器模块,
FormsModule,
反应窗体模块
],
声明:[
应用组件
],
引导:[AppComponent]
})
导出类AppModule{}

为了进一步解释,formGroup是名为FormGroupDirective的指令的选择器,该指令是ReactiveFormsModule的一部分,因此需要导入它。它用于将现有的FormGroup绑定到DOM元素。您可以在Angular的官方文档页面上阅读更多信息

RC5修复程序

您需要从控制器中的“@angular/forms”导入{REACTIVE\u FORM\u DIRECTIVES},并将其添加到@组件中的DIRECTIVES。这将解决问题

修复该问题后,可能会出现另一个错误,因为您没有添加formControlName="名称“到表单中的输入

发表评论