【发布时间】:2019-08-02 15:08:45
【问题描述】:
ATM 我正在使用 Angular 路由器。在父路由中,我有一个默认状态(tabIndex = 0)的组件渲染。
期望的行为:在子路由中,我希望能够更改同一组件上的 tabIndex 状态。
考虑的选项
1.使用数据
我已经成功地通过添加data 并订阅activatedRoute 的子数据来区分路径。
this.route.children.forEach(c => c.data.subscribe(cd => console.log(cd, 'child data'))
Angular router - empty data object for child routes
2.使用参数化
有人还建议我可以使用参数化子路由并进行正则表达式匹配。
定义关系的路由模块段:
{
path: 'parent-path/:id',
component: MyComponent,
children: [{
path: ':child-path'
component: MyComponent,
}]
},
--
最好的方法是什么?
这两种选择都不是特别棒,尤其是因为我将拥有多个级别的父/子关系。有没有人有任何建议或想法。我无法为此找到任何其他有意义的选择,而且我是 ng 新手,所以任何建议或想法都将不胜感激!
【问题讨论】:
-
“tabIndex 状态”是什么意思
-
组件上有一个 tabindex 状态,它决定了哪个
当前处于活动状态。但还有其他用例,我只是想提供一个示例。