2016-12-20 15 views
0

私は合格しようとしていますangular2 heroes-tour角度2のパスマッチルーティングが動作しない

ルーティングパートに問題があります。

プロジェクト構造:書かれたチュートリアルで

enter image description here

そのテンプレートで作成した場合:

app.component.html:

<h1>{{title}}</h1> 
<nav> 
    <a routerLink="/dashboard">Dashboard</a> 
    <a routerLink="/heroes">Heroes</a> 
</nav> 
<router-outlet></router-outlet> 

をしては次のようにルーティングを設定します。

app.module.ts:その後、

import { NgModule }  from '@angular/core'; 
import { BrowserModule } from '@angular/platform-browser'; 
import { FormsModule } from '@angular/forms'; 
import { RouterModule } from '@angular/router'; 

import { AppComponent }  from './app.component'; 
import { HeroDetailComponent } from './hero-detail.component'; 
import { HeroesComponent }  from './heroes.component'; 
import { HeroService }   from './hero.service'; 
import {DashBoardComponent} from "./dashboard.component"; 

@NgModule({ 
    imports: [ 
     BrowserModule, 
     FormsModule, 
     RouterModule.forRoot([ 
      { 
       path: 'heroes', 
       component: HeroesComponent 
      }, { 
       path: 'dashboard', 
       component: DashBoardComponent, 
       pathMatch: 'full' 
      }, { 
       path: 'detail/:id', 
       component: HeroDetailComponent 
      }, 
     ]) 
    ], 
    declarations: [ 
     AppComponent, 
     HeroDetailComponent, 
     HeroesComponent, 
     DashBoardComponent 
    ], 
    providers: [ 
     HeroService 
    ], 
    bootstrap: [AppComponent] 
}) 
export class AppModule { 
} 

、お使いのブラウザでは、これらの変更を参照してくださいアプリケーションルート(/) に移動し、再読み込みします。アプリはダッシュボードを表示し、 ダッシュボードとヒーローの間をナビゲートできます。私が見る私の場合は

enter image description here

このようにページをリロードした後に発生しません/ダッシュボードにリダイレクトします。

どうしますか?

P.S.
投稿の詳細についてはお気軽にお問い合わせください。

+0

コンソールでエラーが確認されましたか?おそらくそれはあなたのコンポーネントの1つを見つけることができませんでしたか? –

+0

あなたはapp.module.ts?にRouterModuleを追加しましたか? –

+0

@Jaime Torresコンソールは空です。リンクをクリックすると各コンポーネントが正しく開きます – gstackoverflow

答えて

2

それが起動し、あなたが見ることができるときにアプリがdashboardを示し、あなたがRouterModule.forRoot内部リダイレクトルールの下に追加する必要があるので、あなたのルートの設定に任意のURLと一致しないあなたがnpm startを行うときに、ブラウザがhttp://localhost:3000のURLで起動することを忘れないでくださいブラウザのアドレスバーにある/dashboardという便利なURL:

{ 
    path: '', 
    redirectTo: '/dashboard', 
    pathMatch: 'full' 
} 
関連する問題