el-menu default-active默认选中后切换菜单后不会取消高亮
2020-01-13 22:42
525 查看
使用el-menu遇到的坑
标签的写法,sidebar-item是一个子组件,遍历菜单详细信息的
<el-menu mode="vertical" :default-active="$route.path" :default-openeds="openeds"> <sidebar-item :routes="menus"></sidebar-item> </el-menu>
sidebar-item 页面:
<template v-for="item in routes"> <router-link v-if="item.children==null &&item.pid==menuID" :to="item.url"> <el-menu-item :index="item.id+'/'+item.name" class='submenu-title-noDropdown'> <svg-icon v-if='item.icon' :icon-class="item.icon"></svg-icon><span slot="title">{{item.name}}</span> </el-menu-item> </router-link> <el-submenu :index="item.id+'/'+item.name" v-if="item.children "> <template slot="title"> <svg-icon v-if='item.icon' :icon-class="item.icon"></svg-icon><span>{{item.name}}</span> </template> <template v-for="child in item.children" v-if='item.children '> <router-link v-if="child.show == 1" :to="child.url"> <el-menu-item :index="child.id+'/'+child.name"> <span>{{child.name}}</span> </el-menu-item> </router-link> </template> </el-submenu> </template>
问题出现的地方是这里:这个index是菜单的key,一定不能是空,或者只是父级路由地址,比如:/topMenu
而children路由里的 path设为“”,设为空的目的是进来主菜单后,默认跳转到path: “”的页面上,这就导致了,这个菜单会一直高亮,不管选中其它任何菜单都不会改变这个菜单的高亮属性
修改子菜单路由地址,不要设为空“”
- 点赞
- 收藏
- 分享
- 文章举报
相关文章推荐
- 用js实现导航菜单点击切换选中时高亮状态
- jquery实现导航菜单点击切换选中时高亮状态
- js实现导航菜单点击切换选中时高亮状态——方法二
- js实现导航菜单点击切换选中时高亮状态
- 解决element-ui中el-menu组件作为vue-router模式在刷新页面后default-active属性与当前路由页面不一致问题的方法
- 解决element-ui框架下导航菜单el-menu 刷新后菜单高亮问题
- 用js实现导航菜单点击切换选中时高亮状态
- 如何取消鼠标默认选中
- JQuery事件e参数的方法preventDefault()取消默认行为
- datagrid 取消选中行后,边框高亮(一般蓝色的)
- Change default ports of activemq:修改activemq的默认端口
- 取消input/select等选中后的高亮样式
- [Android疑难杂症]Gallery默认和横竖屏切换选中状态问题(2.3、2.3系统存在)
- el-menu菜单进行路由跳转
- React Native基于mobx 实现 listview列表默认选中,选中,取消选中
- DataGridView取消默认选中行
- 树形结构菜单选中的菜单高亮实现
- event.preventDefault() 取消事件的默认行为。
- MVC中导航菜单,选中项的高亮问题。
- jQuery+CSS实现的高亮显示选中二级菜单效果