Angular-从父路径获取路径参数

时间:2019-02-22 09:11:11

标签: angular angular-routing route-parameters

我有一个全局路由模块,该模块可让我正确导航到延迟加载的组件模块。

在组件模块中,我有一个可以正确加载的子路由。但是,我似乎无法做的是从相册路径(userDetailComponent的子级)内部访问userID参数

我尝试了以下操作,但返回的结果未定义。

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

以下是我的路由配置。任何帮助将不胜感激。

app-routing.module.ts

const routes: Routes = [
  { 
     path: 'users', 
     loadChildren: '../app/users/users.module#UsersModule' 
  },
  {
     path: 'users/:userID',
     loadChildren: '../app/component/component.module#ComponentModule' 
   }
]

component.module.ts

const routes: Routes = [
  {
    path: '',
    component: UserDetailComponent,
    children: [
      {
        path: 'albums',
        loadChildren: '../app/albums/albums.module#AlbumsModule';
      },
    ]
  },
]

1 个答案:

答案 0 :(得分:0)

albums路径是UserDetailComponent路由的子级,而UserDetailComponent的路由是users/:userId的子级。因此,当您处于albums路由内时,应该通过路由树获取UserDetailComponent路由的参数。您可以使用ActivatedRoute.parent访问路由的父级(它返回当前路由的父级路由)