我有这个网址,它是通过导航到两个辅助路线(foo
和bar
)生成的,这两条路线是page
路线的儿童:
localhost:4200/page/(tab1:foo//tab2:bar)
tab1
和tab2
是路由器插座的名称。
如何使用Angular2的功能将这两条路线 - foo
和bar
- 作为字符串?
我们假设一切都配置正确。
我目前的解决方案是使用Router
的{{1}}属性和正则表达式,考虑到Angular2的可能性有多大,感觉有点“hacky”。
答案 0 :(得分:1)
你可以添加一个名为:expression的可选参数,然后获取参数然后解析它。
我为您提供了一个简单的插件:https://embed.plnkr.co/IPFX7gnCYN9OQJ5DFBVi/
更新:
辅助路线:https://embed.plnkr.co/dVTPhJtrXjKDVPliE5qv/
你应该将ActivatedRoute注入包含的主路线然后你可以得到foo&以下代码吧:
let children = this._route.snapshot.children,
children.forEach(child => console.log((child.url[0] || {path:''}).path);
// ''
// foo
// bar
希望能帮到你。