我使用的是Angular 4,我在控制台得到了一个错误:
不能绑定到ngModel,因为它不是input的已知属性
我该如何解决这个问题?
我使用的是Angular 4,我在控制台得到了一个错误:
不能绑定到ngModel,因为它不是input的已知属性
我该如何解决这个问题?
当前回答
用Angular 7.x更新。X,在我的一个模块中遇到了同样的问题。
如果它在你的独立模块中,添加这些额外的模块:
import { CommonModule } from "@angular/common";
import { FormsModule } from "@angular/forms";
@NgModule({
imports: [CommonModule, FormsModule], // the order can be random now;
...
})
如果它在app。module中。Ts,添加这些模块:
import { BrowserModule } from '@angular/platform-browser';
import { FormsModule } from '@angular/forms';
@NgModule({
imports: [ FormsModule, BrowserModule ], // order can be random now
...
})
一个简单的演示来证明这一点。
其他回答
我的答案是ngModel的拼写错误。我把它写成这样:ngModule,而它应该是ngModel。
所有其他尝试显然都未能为我解决这个错误。
在angular 7中,你必须导入“ReactiveFormsModule”。
import {FormsModule, ReactiveFormsModule} from '@angular/forms';
我通过这个导入解决了这个问题。这对你有帮助。
为了对表单输入使用双向数据绑定,你需要在Angular模块中导入FormsModule包。
import { FormsModule } from '@angular/forms';
@NgModule({
imports: [
FormsModule
]
EDIT
因为有很多相同问题的重复问题,我正在加强这个答案。
有两个可能的原因
缺少FormsModule,因此将此添加到您的模块, import {FormsModule} from '@angular/forms'; @NgModule ({ 进口:[ FormsModule ] 检查input标签中[(ngModel)]的语法/拼写
在app.module.ts中导入表单模块。
import { FormsModule} from '@angular/forms';
@NgModule({
declarations: [
AppComponent,
ContactsComponent
],
imports: [
BrowserModule,HttpModule,FormsModule //Add here form module
],
providers: [],
bootstrap: [AppComponent]
})
在html中:
<input type="text" name="last_name" [(ngModel)]="last_name" [ngModelOptions]="{standalone: true}" class="form-control">
首先导入FormsModule,然后在component.ts中使用ngModel
import { FormsModule } from '@angular/forms';
@NgModule({
imports: [
FormsModule
];
HTML代码:
<input type='text' [(ngModel)] ="usertext" />