Angular'da yeniyim. Öğrenmek için Tour of Heroes'a başladım.
Böylece, iki yönlü
bağlama ile bir app.component
oluşturdum.
import { Component } from '@angular/core';
export class Hero {
id: number;
name: string;
}
@Component({
selector: 'app-root',
template: `
<h1>{{title}}</h1>
<h2>{{hero.name}} details!</h2>
<div><label>id: </label>{{hero.id}}</div>
<div><label>Name: </label>
<input [(ngModel)]="hero.name" placeholder="Name">
</div>
`,
styleUrls: ['./app.component.css']
})
export class AppComponent {
title = 'Tour of Heroes';
hero: Hero = {
id: 1,
name: 'Windstorm'
};
}
Öğreticiyi izleyerek FormsModule'ü içe aktardım ve bildirimler dizisine ekledim. Bu adımda hata ortaya çıktı:
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { AppComponent } from './app.component';
import { FormsModule } from '@angular/forms';
@NgModule({
declarations: [
AppComponent,
FormsModule
],
imports: [
BrowserModule
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }
İşte hata:
Yakalanmamış Hata: Beklenmeyen modül 'FormsModule', 'AppModule' modülü tarafından bildirildi. Lütfen bir @Pipe/@Directive/@Component ek açıklaması ekleyin.
FormsModule,
declarations arraydizisine değil
imports array` dizisine eklenmelidir.
BrowserModule
, FormsModule
, HttpModule
gibi modülleri içe aktarmak içindirComponents
, Pipes
, Directives
içindiraşağıdaki değişikliğe bakın:
@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule,
FormsModule
],
providers: [],
bootstrap: [AppComponent]
})
Imports Arraye
FormsModule` ekleyin.
i.e
@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule,
FormsModule
],
providers: [],
bootstrap: [AppComponent]
})
Ya da bu işlem [(ngModel)]
kullanılmadan<br/> kullanılarak da yapılabilir;
<input [value]='hero.name' (input)='hero.name=$event.target.value' placeholder="name">
yerine
<input [(ngModel)]="hero.name" placeholder="Name">
FormsModule öğesini Declaration:[] öğesinden kaldırın ve FormsModule* öğesini imports:[]** öğesine ekleyin
@NgModule({
beyanlar: [
AppComponent
],
İthalat: [
BrowserModule,
FormsModule
],
sağlayıcılar: [],
bootstrap: [AppComponent]
})