Vue el-menu 详情页父级菜单高亮实现方法
默认情况下,Vue el-menu 在进入详情页后父级菜单不会高亮,这是正常的行为。如果需要在进入详情页后父级菜单高亮,可以使用以下方法:
- 在路由配置中给每个路由设置 meta 属性,用于存储该路由所属的菜单信息,例如:
{ path: '/detail', component: Detail, meta: { menu: 'menu1' } }
- 在 el-menu 组件中添加 active-name 属性,并绑定到一个变量,例如:
<el-menu :default-active="$route.path" :active-name="activeMenu">
- 在路由切换时,获取当前路由所属的菜单信息,将其赋值给 activeMenu 变量,例如:
watch: {
$route () {
const menu = this.$route.meta.menu
if (menu) {
this.activeMenu = menu
}
}
}
- 在 el-menu 组件中添加 highlight-current 属性,使得当前菜单高亮,例如:
<el-menu :default-active="$route.path" :active-name="activeMenu" highlight-current>
这样,在进入详情页后,其所属的父级菜单就会高亮了。
原文地址: https://www.cveoy.top/t/topic/mIxc 著作权归作者所有。请勿转载和采集!