2

angular CLI を使用して小さなプロジェクトを作成しましたが、CLI でデフォルト ルートを宣言する方法がわかりません。親コンポーネントに「/」を使用しましたが、機能しますが、子コンポーネントに「/」を使用すると機能しません。

私のparent.component.tsは次のとおりです。

@Routes([
  { path: '/', component: LoginComponent },
])   

parent.component.htmlは次のとおりです。

<a [routerLink]="['/Login']"></a>
<router-outlet></router-outlet>

child.component.tsは次のとおりです。

@Routes([
    { path: '/', component: DashboardComponent},
])

child.component.htmlは次のとおりです。

<li class="treeview">
    <a [routerLink]="['']">Dashboard</a>
</li>
<router-outlet></router-outlet>

この方法は親と子の両方で機能しますが、デフォルトで「/dashboard」などの別のパスを持つルートが必要です。子コンポーネントでデフォルト ルートを定義する方法はありますか。

4

2 に答える 2

2

私はあなたがこれを試さなければならないと思う: -

export const HomeRoutes: RouterConfig = [
    { path: '', redirectTo: '/home', terminal: true},
    { path: 'home', component: HomeComponent, terminal: true }
];

PS:- テストされていません この回答の功績

アップデート

次のようにルートを 2 回定義することもできます。

{ path: '/', component: HomeComponent}
{ path: 'home', component: HomeComponent}

そうすることで、同じコンポーネントの名前付きルーターだけでなく、デフォルトも存在します。

希望があなたを助けるかもしれません。

于 2016-06-30T09:40:52.900 に答える
1

Put this option in your route config

{ ...,  terminal: true}
于 2016-06-30T09:31:47.740 に答える