vue:路由菜单刷新高亮

很多人遇到了路由高亮的问题。问为什么页面一刷新进来当前页就不不高。刷新的时候也没有记录状态。其实就是路由没有记录。。。

我们想要实现的效果是: 

1、这里用的是 Element UI 。先把菜单封装。请看上面的文章:https://blog.csdn.net/u013592575/article/details/103493865

2、element UI 中 NavMenu 有一个 default-activ=‘xxx’ 的这个属性。这里写上 this.$route.path 。就可以显示高亮了。

    会有多层嵌套路由,所以建议是放这建议是放在 computed (计算属性) 中。

    也可以直接绑定::default-active='$route.path'

    代码图:

 

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Vue 3 中,可以使用 Vue Router 进行路由跳转和导航高亮。下面是一个简单的示例: 1. 首先,确保已经安装了 Vue Router。你可以使用以下命令进行安装: ``` npm install vue-router@next ``` 2. 在你的应用程序的入口文件(通常是 `main.js` 或 `main.ts`)中,导入 Vue Router 并创建一个实例: ```javascript import { createApp } from 'vue' import { createRouter, createWebHistory } from 'vue-router' import App from './App.vue' const router = createRouter({ history: createWebHistory(), routes: [ // 定义你的路由 // { path: '/home', component: Home } ] }) const app = createApp(App) app.use(router) app.mount('#app') ``` 3. 在你的模板中,使用 `<router-link>` 组件来生成导航链接。该组件会自动根据当前路由状态添加一个 `router-link-active` 类,你可以使用该类来设置导航高亮样式。 ```html <router-link to="/home">Home</router-link> <router-link to="/about">About</router-link> ``` 4. 如果你需要在导航链接被点击时进行一些操作,可以使用路由守卫。例如,你可以在导航链接被激活时添加一个自定义类: ```javascript router.beforeEach((to, from, next) => { // 在每次导航前执行操作 const activeLink = document.querySelector('.router-link-active') if (activeLink) { activeLink.classList.remove('router-link-active') } next() }) ``` 这样,当用户点击导航链接时,当前链接会自动添加 `router-link-active` 类,并在下次导航前移除。 请注意,以上只是一个简单的示例,你需要根据你的具体需求进行调整。如果你想了解更多关于 Vue Router 的用法和配置,请查阅官方文档。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值