angular - 如何捕获锚标签的路由事件
问题描述
我需要在用户使用该应用程序时保存他们的浏览历史记录,因此我捕获路由器事件以存储 URL,如下面的代码。它适用于应用程序内部的路由,但<a href="/example" target="_blank">
不会触发任何事件。我如何捕捉它的事件?
this.router.events.pipe(
filter(event => event instanceof NavigationStart)
).subscribe( // My logics to store the URL )
解决方案
您应该使用 [routerLink],而不是 href,它将捕获 navigationEnd。
如果您必须使用target=_blank
,也许尝试在新选项卡中导航到的组件的 ngOnInit 中记录导航。
推荐阅读
- android - 从 PHP 服务器获取 JSON 数据
- ignite - 阿帕奇点燃 | TCP 发现 SPI
- python - 使用 PYTHON 和 JSON 传递 API 页面
- ios - UITextView 中的 UITextField 函数不可用
- python - 从 Selenium 导入元素时,会写入 CSV 上的多行而不是一行
- kotlin - 如何在 Kotlin 中分配当前类实例
- java - 将序列图转换为 Java 代码
- python - 使用不同颜色绘制多个函数,包括导数
- powershell - 在 powershell 脚本中添加空行会产生错误
- java - HTTP 响应没有给出输出