2016-05-16 13 views
0

Ich erhalte diesen Fehler beim Lernen von Angular2 Tutorials. Ich habe alles überprüft, aber den Fehler nicht gefunden. Hier ist mein Code untenReferenceError: DashboardComponent ist nicht definiert

app.component.ts

import { Component } from '@angular/core'; 
import { RouteConfig, ROUTER_DIRECTIVES, ROUTER_PROVIDERS } from '@angular/router-deprecated'; 
import { HeroesComponent } from './heroes.component'; 
import { HeroService } from './hero.service'; 


@Component({ 
    selector:"my-app", 
    template:` 
     <h1>{{title}}</h1> 
     <nav>   
      <a [routerLink]="['Heroes']">Heroes</a>   
     </nav> 
     <router-outlet></router-outlet> 
    `, 
    directives: [ROUTER_DIRECTIVES], 
    providers:[ 
     ROUTER_PROVIDERS, 
     HeroService 
    ] 
}) 

@RouteConfig([      
     { 
      path: '/dashboard', 
      name: 'Dashboard', 
      component:DashboardComponent, 
      useAsDefault:true 
     }, 
     { 
      path:'/heroes', 
      name:'Heroes', 
      component:HeroesComponent 
     } 
]) 

export class AppComponent { 
    title = "My Heroes App"; 
} 

dasboard.component.ts Import {Component} von '@ Winkel/Kern';

@Component({ 
    selector: 'my-home', 
    template: '<h3>My Dashboard</h3>' 
}) 
export class DashboardComponent {} 

Alles funktioniert perfekt, wenn ich von @RouteConfig

{ 
    path: '/dashboard', 
    name: 'Dashboard', 
    component:DashboardComponent, 
    useAsDefault:true 
}, 

Antwort

2

Sie müssen folgenden Codeblock entfernen und die DashboardComponent Komponente importieren:

import { DashboardComponent } from './dashboard.component'; 

ich nur den HeroesComponent man sehen, importiert ...

0

Ich lief in die gleiche Fehlermeldung mit dem Tutorial "Tour of Heroes". Das Tutorial sagt

Also import and add DashboardComponent to our root NgModule's declarations.

OK, ich weiß, wie eine Komponente importieren:

import { DashboardComponent } from './dashboard.component';

aber wo muss es importiert werden? Die obige Antwort sagt, es in app.component.ts zu importieren. IMHO das ist falsch. Das einzige Modul, das in app.component.ts importiert wird, ist

import { Component } from '@angular/core';

, sondern DashboardComponent Bedarf in zwei Dateien importiert werden: app.module.ts und app.routing.ts.

Verwandte Themen