Angolare 2 | Direttive L’argomento di tipo ‘{}’ non è assegnabile a

Sono noob con Angular 2. Sto facendo tutorial su YouTube, ma ogni tutorial ha le directives: parte in cui sono bloccato.

app.component.ts

 import { Component } from '@angular/core'; import { HeaderComponent } from './components/header/header.component' @Component({ selector: 'my-app', template: '

Hello

', directives: [HeaderComponent] }) export class AppComponent { }

L’output dell’errore è:

 Argument of type '{ selector: string; template: string; directives: typeof HeaderComponent[]; }' is not assignable to parameter of type 'ComponentMetadataType'.at line 6 col 3 

header.component.ts

 import { Component } from '@angular/core'; @Component ({ selector: 'header', template: '

hit!

' }) export class HeaderComponent { }

Ecco uno screenshot dell’errore inserisci la descrizione dell'immagine qui

directives proprietà delle directives stata rimossa in RC.6

Dovresti spostarlo nella proprietà declarations del tuo decoratore NgModule

 @NgModule({ imports: [ BrowserModule ], declarations: [ AppComponent, HeaderComponent ], <== here bootstrap: [ AppComponent ] }) export class AppModule { } 

Se stai usando RC6 , solo tu dovresti fare quanto segue,

 import { HeaderComponent } from './components/header/header.component' //<----added this line @NgModule({ imports: [ BrowserModule ], declarations: [ AppComponent,HeaderComponent], //<----added HeaderComponent bootstrap: [ AppComponent ] }) 

Questo è un problema molto comune se sei nuovo in angular2 e questa risposta è probabilmente per coloro che sono bloccati con lo stesso tipo di problema.

Prima di tutto, non dimenticare di importare la class del componente figlio (qui, HeadComponent) nel componente root ( app.component.ts ) come segue: –

 //inside app.component.ts import{ HeadComponent} from'./components/header/header.component'; 

Quindi dovresti spostarlo nelle dichiarazioni in app.module.ts : –

 import{ TutorialsComponent} from'./components/header/header.component'; @NgModule({ declarations: [ AppComponent,HeadComponent] 

Immagino che questo dovrebbe aiutare.

WebStorm mi ha detto di proteggere il costruttore. Così ho fatto. Ha causato questo problema in un riavvio del webpack. Rimozione della parola chiave protetta di nuovo riparato.