Nach dem Upgrade Winkel 5 bis 6
Ich habe versucht, mein Formular zu aktualisieren:
anguar 5 ich hatte:
<select [ngModel]="toto" (ngModelChange)="onChange($event)"
<option *ngFor="let toto of totos" [ngValue]="toto.id">{{toto.libelle}}</option>
</select>
winkel 6 Ich habe aktualisiert:
<select #oldValue="ngModel" [(ngModel)]="toto" (ngModelChange)="onChange(oldValue)"
<option *ngFor="let toto of totos" [ngValue]="toto.id">{{toto.libelle}}</option>
</select>
Ich habe diesen Fehler erhalten:
compiler.js:215 Uncaught Error: Template parse errors:
There is no directive with "exportAs" set to "ngModel" ("
Ich habe FormsModule
in meiner app.component.ts
Was vergesse ich? Danke dir
Gibt es in Ihrer Komponente einen Variablennamen "toto", wenn es vorhanden ist ... Ok
Zum einen müssen Sie das Open-Select-Tag richtig schließen.
Wenn Sie [(ngModel)] verwenden, müssen Sie den Namen im forrm-Element festlegen
Das erste, was Sie verpasst haben, ist, dass Sie das select-Tag nicht close
verwenden.
Das zweite, was Sie FormsModule and ReactiveFormsModule
in app.module.ts
importieren müssen
HTML-Datei
<select #oldValue="ngModel" [(ngModel)]="toto" (ngModelChange)="onChange(oldValue)">
<option *ngFor="let toto of totos" [ngValue]="toto.id">{{toto.libelle}}</option>
</select>
In der Datei app.module.ts
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
Die beiden oben genannten Importe sollten wie folgt im ngModule-Tag enthalten sein
@NgModule({
imports: [
FormsModule,
ReactiveFormsModule
]
})
Ich denke, Sie haben vergessen, >
in select hinzuzufügen.
<select #oldValue="ngModel" [(ngModel)]="toto" (ngModelChange)="onChange(oldValue)">