如何使用Angular2的功能从url获取辅助路由?

时间:2016-11-01 17:27:48

标签: angular angular2-routing

我有这个网址,它是通过导航到两个辅助路线(foobar)生成的,这两条路线是page路线的儿童

localhost:4200/page/(tab1:foo//tab2:bar)

tab1tab2是路由器插座的名称。

如何使用Angular2的功能将这两条路线 - foobar - 作为字符串?

我们假设一切都配置正确。

我目前的解决方案是使用Router的{​​{1}}属性和正则表达式,考虑到Angular2的可能性有多大,感觉有点“hacky”。​​

1 个答案:

答案 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
希望能帮到你。