我收到此错误 - “模板解析错误:没有NgControl的提供程序”
The error comes from this line of code
--> <select (ngModel)="currencies" (ngModelChange)="showPurchase($event)" class="annka-center" name="curencies">
<option *ngFor="let money of currencies; let i = index" (ngValue)="money" (click)="showPurchase(money)"> {{money.Currency}} </option>
</select>
上面的代码运行顺利,直到我将ReactiveFormsModule添加到我的应用程序。
我在这里尝试了解决方案
ERROR in : No provider for NgControl Angular AOT
但这对我没用。我正在使用Angular 4.
答案 0 :(得分:12)
应该是
<select [(ngModel)]="currencies" (ngModelChange)="showPurchase($event)" class="annka-center" name="curencies">
<option *ngFor="let money of currencies; let i = index" (ngValue)="money" (click)="showPurchase(money)"> {{money.Currency}} </option>
</select>
还要确保在导入下的app.module.ts中导入FormsModule 从'@ angular / forms'中导入{FormsModule,ReactiveFormsModule};
@NgModule({
imports: [
FormsModule
]
答案 1 :(得分:2)
我收到此错误是因为我忘记将this.props.navigation.state.params.update();//you can pass params also if needed
指令添加到模板中的表单控件中,这意味着:
formControlName
答案 2 :(得分:1)
我在 angular 10.x 版本上遇到了同样的问题,我必须在 app.module.ts 中添加 CommonModule。
import {CommonModule } from '@angular/common';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
@NgModule({
imports: [
CommonModule,
FormsModule
]
答案 3 :(得分:1)
为了解决这个错误,我在我的 app.module.ts 中导入了 5 个模块(你可以在相关的 component.module.ts 中导入,如果你不想在 app 中添加它.module.ts):
如何导入:
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { HttpClientModule } from '@angular/common/http';
import { MatSelectModule } from '@angular/material';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
@NgModule({
imports: [
ReactiveFormsModule,
FormsModule,
MatSelectModule,
HttpClientModule,
BrowserAnimationsModule
]
// rest of your code
答案 4 :(得分:0)
出现此错误是因为我忘记在输入元素上添加[(ngModel)]
。
<input [(ngModel)]="firstName/>