Получение Нет провайдера для NgControl Ошибка после добавления ReactiveFormsModule в мое угловое приложение 4

Я получаю эту ошибку - "Ошибки анализа шаблона: нет провайдера для 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 в мое приложение.

Я попробовал решение здесь

ОШИБКА в: Нет провайдера для NgControl Angular AOT

но это не помогло мне. Я использую Angular 4.

Ответы

Ответ 1

Должно быть

<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>

Также убедитесь, что вы импортируете FormsModule внутри app.module.ts под импортом

import { FormsModule, ReactiveFormsModule } from '@angular/forms';

    @NgModule({
        imports: [
             FormsModule      
        ]

Ответ 2

Я тоже получил эту ошибку, потому что я забыл добавить директиву formControlName к своему элементу управления формой в шаблоне, что я имею в виду:

<input formControlName="firstName" />

Ответ 3

Отсутствует formControlName в моем шаблоне, глючит меня на целый день, спасибо @Stephen Paul

Ответ 4

Я получил эту ошибку, потому что я забыл добавить [(ngModel)] в мой элемент ввода.

<input [(ngModel)]="firstName/>