如何在角度应用程序外部访问角度路由数据

时间:2019-12-04 06:17:54

标签: angular typescript

我需要在构建时为每个模块生成站点地图。

我的项目结构

- cli
- client
   -- Module A
      -- Routing A
   -- Module B
      -- Routing B
   -- Module C
      -- Routing C
- server

我需要访问CLI文件夹中每个模块的路由器数据,以生成各个模块的站点地图。

我有生成站点地图的逻辑。但是我不知道如何访问路由器数据。

请帮助。

2 个答案:

答案 0 :(得分:0)

要获得活动路由而不订阅路由器事件,您可以简单地递归使用while循环来找到最低的子级。

private getActivatedRoute(): ActivatedRoute {
    let route = this.router.routerState.root;
    while (route.firstChild) {
        route = route.firstChild;
    }
    return route;
}

希望这会有所帮助。

答案 1 :(得分:0)

不是很好的解决方案,但是您可以将数据放入window对象,然后从其他模块获取数据:

const routeData = {name: 'home'}
window['routeData'] = {...routeData};