【发布时间】:2018-03-07 18:12:36
【问题描述】:
我正在使用多个路由器出口来加载我的组件。 外部路由器插座用于加载最基本的组件,如登录、家庭、404。 我使用嵌套的路由器插座来加载主页的子组件。该路由器插座嵌套在 home.component 中。
home.component.html
<app-header></app-header>
<router-outlet name="homeRoute"></router-outlet>
<app-footer></app-footer>
app.module.ts
const appRoutes: Routes = [
{path: '', component: HomeComponent, children: [
{path: '', component: DashboardComponent, outlet: 'homeRouter'},
{path: 'user', component: UserComponent, outlet: 'homeRouter'},
{path: 'user/:id', component: UserdetailComponent, outlet: 'homeRouter'}
]},
{path: 'login', component: LoginformComponent},
{path: '**', component: NotfoundComponent}
];
HomeComponent 和 LoginformComponent 需要从外部路由器出口加载。 Home 组件包含名为“homeRouter”的内部路由器插座,我想用它来加载主页的子组件。 但是内部路由器的导航不起作用。我尝试使用 router.navigate() 方法和 URL 访问每个组件。但是两者都没有按预期工作。
谁能告诉我这段代码有什么问题。我检查并尝试了几个关于同一问题的先前问题,但没有一个工作正常。
这是我为不同组件尝试过的 URL
-
http://localhost:4200dashboardComponet(这个有效) -
http://localhost:4200/useruserComponent(不起作用。路由到 notFoundComponent) -
http://localhost:4200/user/U001userDetailComponent(不工作。仍然路由到 notFoundComponent)
【问题讨论】:
-
有一个错字 name="homeRoute" 出口:'homeRouter'
标签: angular angular2-routing nested-routes router-outlet