1

我正在管理组及其成员。为此,我创建了两个不同的模块,一个用于组,另一个用于成员。我正在通过延迟加载为成员加载路线。这是我的组路由模块:

const routes: Routes = [ { path: 'groups', children: [ { path: '', component: GroupListComponent, }, { path: ':id', children: [ { path: '', component: GroupDetailComponent, }, { path: 'edit', component: GroupFormComponent }, { path: 'members', loadChildren: 'app/groups/members/members.module#MembersModule', } ], }, ], } 使用此版本,一切都按预期工作。

  • 在我的GroupDetailComponentandGroupFormComponent中,我得到了我的参数,this.route.params.subscribe(params...它位于 params['id']。
  • 在我的MemberDetailComponent(/groups/:id/members/:member_id) 中,我得到了我的参数this.route.snapshot.parent.params

但是,我现在想添加一个选项卡菜单来通过切换选项卡来管理组及其成员,因此我将组路由更新为:

const routes: Routes = [ { path: 'groups', children: [ { path: '', component: GroupListComponent, }, { path: ':id', component: GroupComponent, children: [ { path: '', redirectTo: 'detail', pathMatch: 'full', }, { path: 'detail', component: GroupDetailComponent, }, { path: 'edit', component: GroupFormComponent }, { path: 'members', loadChildren: 'app/groups/members/members.module#MembersModule', } ], }, ], }

我只是在其中显示一个菜单GroupComponent

  • 现在要在 my 中获取我的组 id GroupDetailComponent,我需要使用this.route.snapshot.parent.params
  • 但是我无法从我的组件中获取我的组 IDMembersModule

难道我做错了什么 ?我刚刚添加了一个“共享”模块,它只是该组的一个菜单。

谢谢你的帮助

4

0 回答 0