routerLinkActive指令的妙用

本文介绍如何使用Angular的routerLinkActive指令实现路由激活时的样式高亮。通过此指令,可以轻松地在DOM元素上添加样式类,仅在URL变化时移除。支持父路由和完全匹配激活,并可通过RouterLinkActive API进行高级控制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

routerLinkActive指令在路由激活时添加样式class

采用路由高亮:
当路由被激活时允许你添加一个class在你添加路由的dom元素上,只有url变化时才会移除此样式。

父路由链接激活

默认情况下,当路由为链接的父路由或者完全匹配链接,链接都会认为是激活的状态。

<a routerLink="/a/b" routerLinkActive="active">B链接</a>

示例里当路由为“/a”和“/a/b”class active都会被添加。

完全匹配激活

如果限定当前路由需要和链接路径完全匹配才激活,可以在routerLinkActiveOptions属性添加exact: true。

<a routerLink="/a/b" routerLinkActive="active" [routerLinkActiveOptions]="{exact:true}">B链接</a>

调用RouterLinkActive的api

可以把RouterLinkActive实例赋值给一个变量,然后就可以通过变量来调用RouterLinkActive的api:

<li nz-menu-item routerLinkActive #rla="routerLinkActive" [nzSelected]="rla.isActive">
       <a [routerLink]="/a/b" routerLinkActive="active"></a>
</li>

示例中只有路由在激活状态,当路由为“/a”和“/a/b”时, active会被添加,相应的标签被选中并高亮显示

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值