Angular 没有ngControl[FormControl]的提供程序6
我正在学习英语。虽然官方教程对我来说效果很好,但我仍然坚持使用反应式表单的“hello world”。我跟在后面。我在另一个wise工作项目中创建了一个新组件,用于使用ReactiveForm创建一个输入文本框。html模板如下所示:Angular 没有ngControl[FormControl]的提供程序6,angular,Angular,我正在学习英语。虽然官方教程对我来说效果很好,但我仍然坚持使用反应式表单的“hello world”。我跟在后面。我在另一个wise工作项目中创建了一个新组件,用于使用ReactiveForm创建一个输入文本框。html模板如下所示: <div> <label> Name: <input type="text" [formControl]="name"> </label>
<div>
<label>
Name:
<input type="text" [formControl]="name">
</label>
</div>
浏览器中的错误如下所示
Uncaught Error: Template parse errors:
No provider for NgControl ("
<label>
Name:
[ERROR ->]<input type="text" [formControl]="name">
</label>
</div>"): ng:///ViewsModule/PartyWorkerComponent.html@3:6
我不明白我做错了什么。非常感谢您的帮助。要完成此任务,您必须在
@NgModule
中导入反应表单模块
,这是您的问题所建议的视图模块。AsFormControl
作为ReactiveFormsModule
的一部分公开,而不是FormsModule
...
import { ReactiveFormsModule, ... } from '@angular/forms';
@NgModule({
imports: [..., ReactiveFormsModule, ...],
...
})
export class ViewsModule {...}
对不起,打扰了任何一个考虑过的人。事实证明,我的应用程序中有两个模块,AppModule不是我的组件所在的位置!重要的模块中缺少ReactiveFormsModule。添加了相同的内容并解决了问题 适用于使用并看到此错误的任何人。别忘了把上面提到的内容也导入到你的故事中
import { ReactiveFormsModule } from '@angular/forms';
moduleMetadata({
imports: [ReactiveFormsModule]
})
对于角度11,应为:
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
@NgModule({
imports: [
FormsModule
]
我也遇到过同样的问题,结果发现我有一个自定义表单控件,在使用该控件时忘记指定[(ngModel)]或[formControl]。以重复为代价,让我声明我已经在应用程序模块中完成了这项操作。从从头开始就导入了ReactiveFormsModule和FormModule。也在玩他们的命令。但是没有用。PartyWorkerComponent
是您的app.module
的一部分吗?PartyWorkerComponent
是ViewsModule
的一部分,那么ReactiveFormsModule
应该添加到ViewsModule
的导入数组中,从错误中可以看出ng:///ViewsModule/PartyWorkerComponent。html@3:6
谢谢你把Storybook.js
塞进这个答案,我不知道,但现在我知道了:)你的生活已经变得更好了:D我现在住在这里是为了发展-别忘了查看所有的附加功能谢谢,这真的很有帮助
import { ReactiveFormsModule } from '@angular/forms';
moduleMetadata({
imports: [ReactiveFormsModule]
})
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
@NgModule({
imports: [
FormsModule
]