angular - Angular所有菜单项以访问当前ID
问题描述
希望有人可以帮助我有一个带有项目列表的侧边栏,每个列表项都有一个 routerlink,我正在努力如何获取当前选择的 id,以便每个列表项都有该 id 传递给组件。
该应用程序从数据库中的项目列表开始,当我单击该行时,它会将我带到子对象,并且在 url 中有 id,因此该部分正在工作,但我需要以某种方式获取该 id,以便所有项目都在我的侧边栏可以访问该 ID,但无法弄清楚,并认为这将是一个简单的部分,并将其留到最后。
因此,一旦选择了该项目,我就需要以某种方式让 routerlink 中的所有项目都可以访问它。
<a [routerLink]="['/addresses/', this.id]" >地址 <a [routerLink]="['/reports/', this.id]" >报告
谢谢
解决方案
根据这篇文章,您可以订阅侧边栏组件内的路线更改。
尝试以下操作:
constructor(private router: Router) {
router.events.subscribe((routerEvent) => {
if (routerEvent instanceof NavigationEnd) {
console.log('current route:', routerEvent.url);
// parse the id from the url here e.g. routerEvent.split('/')[2]
}
});
}
推荐阅读
- python - 在不损失太多性能的情况下报告进度
- sql - 简化 CTE 以获得不同年份的价值
- java - 从服务开始活动
- swift - NavigationBar 覆盖 tabBarController 中的其他视图控制器
- python - Pandas:基于函数有效更新列值
- mongodb - Mongo 为集合中的每个数组项更新一个数组属性
- angularjs - Angular/Ionic 代码调用函数尚未加载
- javascript - 我想将输入字段中的数据添加到从构造函数创建的新对象并将其输出到浏览器中?
- nuget - Azure 管道不会创建预发布版本
- java - 如何使用 ArrayList 在 Java Jtable 中显示 mysql 表中的所有数据?