vue3第一个页面中的按钮跳转其他页面,头部组件菜单el-menu菜单高亮随之改变

在首页中,点击“查看详情”跳转“产品领域”

57e5e55ee89e4bd0bc2c489b884b8750.png

2ff21666e691419cbc233084f86f417c.png

673a04d5dd5246069886bba61417ccfe.png

页面跳转功能实现,但是el-menu的菜单高亮却没有改变

e7c879fd355b4310a9a7698f8ac144bf.png

解决方法:

在el-header组件中,添加:

router.afterEach(() => {

      activeIndex.value = route.path;

});

ca0a38fb0dcb43e4a4605c32504fb1a8.png

3a7c30a753d344ed8f383c4fa201dbf9.png

afterEach 是Vue Router其中一个全局后置守卫,它会在每次路由导航完成后被调用。

  • afterEach 守卫确保在每次路由切换完成后,将当前路由的路径(route.path)赋值给 activeIndex.value
  • 这样做的目的是更新 activeIndex 的值,以便 el-menu 组件可以根据 activeIndex 的值来决定哪个菜单项应该处于高亮状态,从而反映当前活跃的页面。

e1733c296d9442bc9e8fa142973e6f54.png

这样头部组件el-menu菜单高亮就能随着路由页面的变化而改变

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值