active-class 属于哪个组件中的属性?该如何使用?

active-class 是 Vue Router 提供的一个自定义激活 class 名的属性,它是 <router-link> 组件中的专用属性。

1. 属于哪个组件?

active-class<router-link> 组件 的一个 prop。

2. 有什么用?

<router-link> 指向的路径是当前路由时,它会自动应用一个 CSS class,默认是:

.router-link-active

你可以用 active-class 改掉这个 class 名,自定义你想要的样式名。

3. 如何使用?

默认写法:

<router-link to="/home" active-class="my-active-class">首页</router-link>

当前路由是 /home 时,DOM 元素会加上 my-active-class,你就可以自定义样式了。

.my-active-class {
  color: red;
  font-weight: bold;
}
  1. 与 exact-active-class 的区别
属性名 匹配方式 默认类名
active-class 模糊匹配(路径前缀一致) .router-link-active
exact-active-class 精确匹配(路径完全一致) .router-link-exact-active
例子:
<!-- 当前路由是 /home -->
<router-link to="/home" active-class="is-active">首页</router-link>
<router-link to="/home/info" active-class="is-active">信息</router-link>

/home/info 也会给 /home 的 link 加上 .is-active,因为它是前缀一致。
若要严格匹配,用 exact-active-class

结论

active-class<router-link> 的 prop,用来自定义选中时的 class。

默认使用 .router-link-active,可以自定义为你自己的类名。

常用于菜单高亮、tag 激活样式等。

posted @ 2025-07-14 17:50  煜火  阅读(33)  评论(0)    收藏  举报