0

我有以下路由配置。如何从项目编辑组件内部访问父路由中看到的:projectId ?

 {
        path: 'folders/:folderId/projects/:projectId/s',
        component: ProjectDetailComponent,
        canActivate: [AuthGuardService],
        children: [
            {
                path: 'edit',
                component: ProjectEditComponent,
                canActivate: [AuthGuardService],
            },
            {
                path: 'i',
                component: IssuesListComponent,
                canActivate: [AuthGuardService],
            },
        ],        
    },

当我没有子路线时,我以前使用过这种方法:

this.activatedRoute.params.subscribe((urlParameters) => {
  this.project_id = urlParameters['projectId'];
});

不幸的是,这不再有效。

4

2 回答 2

0

您可以提取父组件中的projectId并使用@Input将其传递给两个子组件

于 2018-10-19T12:30:52.903 回答
0

您应该能够使用ActivatedRoute 父属性访问父路由参数:

this.activatedRoute.parent.params.subscribe((urlParameters) => {
  this.project_id = urlParameters['projectId'];
});
于 2018-10-19T12:27:05.267 回答