已导入FormsModule仍无法绑定ngModel的问题求助
排查
Can't bind to 'ngModel' since it isn't a known property of 'input' 错误 以下是几个常见的排查方向:
确认使用
ngModel的组件所属模块是否导入了FormsModule
如果你在CustomerComponent的模板里使用了ngModel,虽然AppModule已经导入FormsModule,但如果CustomerComponent属于另一个独立的特性模块(Feature Module),那该特性模块也需要单独导入FormsModule——Angular 的模块是隔离的,每个使用表单指令的模块都得显式导入对应模块。检查拼写与导入路径
仔细核对:- 导入的是
FormsModule(注意末尾的s,别写成FormModule) - 导入路径是
@angular/forms,没有拼写错误
- 导入的是
如果使用独立组件(Angular 14+)
若你的组件是通过standalone: true声明的独立组件,需要在组件的imports数组中添加FormsModule,而不是在 NgModule 里导入:@Component({ selector: 'app-customer', standalone: true, imports: [FormsModule], // 在这里添加 templateUrl: './customer.component.html' }) export class CustomerComponent {}确认组件已在模块的
declarations中注册
检查使用ngModel的组件是否被正确添加到对应模块的declarations数组里,比如你的CustomerComponent已经在AppModule的declarations中,这部分是没问题的,但如果是其他组件,要确认这一点。
内容的提问来源于stack exchange,提问作者Jasmine
相关产品推荐
相关产品推荐

