|
@@ -16,9 +16,18 @@ watch(
|
|
immediate: true,
|
|
immediate: true,
|
|
}
|
|
}
|
|
);
|
|
);
|
|
-const submenuEvent = (path)=>{
|
|
|
|
- // console.log(path)
|
|
|
|
- router.push(path)
|
|
|
|
|
|
+
|
|
|
|
+//点击有二级菜单的默认打开第一个
|
|
|
|
+const submenuEvent = (e)=>{
|
|
|
|
+ // 查找当前点击的二级菜单如果当前的路由在二级菜单的子菜单中含有则不坐任何操作
|
|
|
|
+ let flag=false
|
|
|
|
+ e.children.forEach(item=>{
|
|
|
|
+ if(item.path==route.path){
|
|
|
|
+ flag=true
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ if(flag) return
|
|
|
|
+ router.push(e.path)
|
|
}
|
|
}
|
|
let menuList = reactive([
|
|
let menuList = reactive([
|
|
{
|
|
{
|
|
@@ -117,17 +126,19 @@ watch(
|
|
|
|
|
|
<template>
|
|
<template>
|
|
<div class="aside-wrap">
|
|
<div class="aside-wrap">
|
|
- <el-menu router :default-active="activePath" unique-opened @open="submenuEvent"
|
|
|
|
|
|
+ <el-menu router :default-active="activePath" unique-opened
|
|
text-color="#333" active-text-color="#F3A52F" class="el-menu-wrap">
|
|
text-color="#333" active-text-color="#F3A52F" class="el-menu-wrap">
|
|
<template v-for="menu in menuList">
|
|
<template v-for="menu in menuList">
|
|
<el-menu-item :index="menu.path" :key="menu.MenuId" v-if="!menu.children">
|
|
<el-menu-item :index="menu.path" :key="menu.MenuId" v-if="!menu.children">
|
|
<img class="menu-icon" :src="menu.icon_path" alt="" />
|
|
<img class="menu-icon" :src="menu.icon_path" alt="" />
|
|
<span class="menu-text">{{ menu.name }}</span>
|
|
<span class="menu-text">{{ menu.name }}</span>
|
|
</el-menu-item>
|
|
</el-menu-item>
|
|
- <el-sub-menu :index="menu.path" :key="menu.MenuId" v-else>
|
|
|
|
|
|
+ <el-sub-menu :index="menu.path" :key="menu.MenuId" v-else>
|
|
<template #title>
|
|
<template #title>
|
|
- <img class="menu-icon" :src="menu.icon_path" alt="" />
|
|
|
|
- <span class="menu-text">{{ menu.name }}</span>
|
|
|
|
|
|
+ <div style="flex:1" @click="submenuEvent(menu)">
|
|
|
|
+ <img class="menu-icon" :src="menu.icon_path" alt="" />
|
|
|
|
+ <span class="menu-text">{{ menu.name }}</span>
|
|
|
|
+ </div>
|
|
</template>
|
|
</template>
|
|
<el-menu-item v-for="child in menu.children" :key="child.MenuId" :index="child.path" style="text-align: center">
|
|
<el-menu-item v-for="child in menu.children" :key="child.MenuId" :index="child.path" style="text-align: center">
|
|
{{ child.name }}
|
|
{{ child.name }}
|