Angular 9无法在子模块中获取路由参数

时间:2020-04-17 11:24:20

标签: angular routes git-submodules angular9 routeparams

我试图在子模块中获取路由参数时遇到问题。

我们有两个模块 Project Ticket 项目是主要模块,票证是子模块。

我尝试创建的路线就像。 “ project /:id / ticket /”->“ / project / 1 / ticket /”。

project-routing.module.ts

const routes: Routes = [
  {
    path: ':id',
    component: ProjectComponent,
    children:[
      {
       path: 'ticket',
       loadChildren: () => import('../ticket/ticket.module').then(m => m.TicketModule),
      }  
   ]
  }]

在该 Ticket 模块中。我有称为视图的组件。我需要在路线网址“ / project / 1 / ticket”中的项目ID。我尝试了以下代码来获取路线参数。但是我只得到值 undefined

ticket-routing.module.ts

const routes: Routes = [ {
  path: '',
  component: ViewComponent
}]

view.component.ts

  this.route.parent.params.subscribe(params => {  // Here params giving -> {}
    this.projectId = +params["id"];
  });

我无法在此子模块中获取路由参数。

谢谢。

1 个答案:

答案 0 :(得分:0)

您不需要访问parent中的route。 尝试做

this.route.paramMap.subscribe(params => {
    this.projectId = +params.get('id');
});