【发布时间】:2018-02-17 03:17:19
【问题描述】:
我想在链接处于活动状态时使用 routerLinkActive 设置 CSS 样式并添加类。我已经尝试过引导并且它可以工作,但是当我从前端开发人员那里获得自定义 CSS 时,它不会添加声明它处于活动状态的类,即使路由 url 与 routeLink。
我有点沮丧,不知道出了什么问题。我希望它会在路由处于活动状态时在锚点中添加类 menu-active。
这是我的代码:
sidebar.component.html
<li class="menu-parent">
<a class="menu-item" routerLink="/dashboard" routerLinkActive="menu-active">
<i class="ti ti-anchor"></i>
<span class="menu-text">Dashboard</span>
</a>
</li>
我已经像下面的代码一样进行了测试,引用自this question。我希望 i 显示,因为 routerlink 处于活动状态,但它没有,即使我在 http://localhost:4200/dashboard 中。
<li class="menu-parent">
<a class="menu-item" routerLink="/dashboard" routerLinkActive #rla="routerLinkActive">
<i class="ti ti-anchor" *ngIf="rla.isActive"></i>
<span class="menu-text">Dashboard</span>
</a>
</li>
希望有人能消除我的沮丧。谢谢。
更新:
当我检查元素时,甚至没有添加该类。这是它的截图:
【问题讨论】:
-
链接是否按预期工作?如果该类被应用于锚元素,您是否签入了开发工具?
-
@Hinrich 是的,当我单击链接时,该链接已生效。当我检查元素时,该类未应用。我在问题更新中添加了屏幕截图。
-
到目前为止对我来说看起来不错。能否请您也显示路由配置?
-
您提供的代码看起来不错。你能尝试在像 codepen 或 plunkr 这样的操场上重现这个问题吗?
-
@hinrich 我找到了解决方案。谢谢你的帮助!
标签: angular angular2-router routerlinkactive