Angular 2 parent的路径替换为child的路径

问题描述 投票:-3回答:1

这是我最新版Angular app的当前路由配置

const routes = [
  { path: 'board', component: BoardComponent, canActivate: [AuthGuard], children: [
    { path: 'stories', component: StoryComponent }]},
    { path: '**',   redirectTo: 'board', pathMatch: 'full' }
];

它工作正常,两个组件都显示,我想以相同的方式工作,但有一点变化:当用户路由到/board/stories,我希望路径只是/stories,是否可以这样做?

angular nested-routes
1个回答
0
投票

通过定义路线的方式 - 不,这是不可能的。

通过将stories定义为board的孩子,你完全确定了你的路线是.../board/stories。因此,只有/stories的路线将与您定义的路线不匹配。

如果你想要路线只是/stories那么你可以简单地重新定义你的路线

const routes = [
  { path: 'board', component: BoardComponent, canActivate: [AuthGuard]},
  { path: 'stories', component: StoryComponent, canActivate: [AuthGuard]},
  { path: '**',   redirectTo: 'board', pathMatch: 'full' }
];
© www.soinside.com 2019 - 2024. All rights reserved.