You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Angular routerLinkActive指令异常 子路由页面active样式类未生效

问题根因

  • 核心问题是About导航使用了原生href属性而非Angular内置的routerLink指令:routerLinkActive指令需要绑定在带有routerLink指令的元素上,才能正常监听Angular路由系统的状态变化,匹配当前路由后添加对应的激活类。原生href触发的是浏览器默认跳转逻辑,不会被Angular路由系统捕获状态,自然无法触发active类的添加。
  • 如果你的项目做了前端路由 fallback 配置,原生href跳转后会触发页面重载,重载后的routerLinkActive也无法识别不带routerLink的元素对应的路由状态。

修复方案

将About导航的href替换为routerLink即可,修改后代码如下:

<a routerLink="/profile" routerLinkActive="active" [routerLinkActiveOptions]="{exact: true}">Posts</a>
<a routerLink="/profile/about" routerLinkActive="active">About</a>

修改后跳转至/profile/about路径时,routerLinkActive会自动识别路由匹配关系,给About导航添加上active类。

内容的提问来源于stack exchange,提问作者sqpl13

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 17:36:04