【发布时间】:2017-05-07 09:36:37
【问题描述】:
我想根据来自路由器的一些Data 显示/隐藏routerLinks。指令完成了,但我错过了最重要的部分......
例如,我有以下路由器配置(省略组件):
[
{ path: '', children: [
{ path: 'foo', children: [
{ path: 'bar', data: { requiredPermissions: ['a', 'b'] } }
]}
]},
{ path: 'baz', data: { requiredPermissions: ['c'] }, children: [
{ path: ':id' }
]}
]
现在我想向Router 询问Route,如果routerLink 是/foo/bar 或/baz/123,将使用它。
我查看了Router 源代码(https://github.com/angular/angular/blob/master/modules/%40angular/router/src/router.ts),但找不到一些简单的方法来做到这一点。尤其是它如何处理这些:id 变量。
当然,我可以迭代 Router.config,越深入越好。但是我必须解析这些变量、正则表达式等。必须有一种更简单的方法,因为角度路由器也必须在内部完成所有这些工作。
你有什么想法/解决方案吗?
【问题讨论】:
-
你想要当前路线的数据吗?
标签: angular angular2-routing angular2-router3 angular2-router