From d635b51ae0ffe922d7e56bbceb7229fe7a5fd8f2 Mon Sep 17 00:00:00 2001
From: pyt <626651354@qq.com>
Date: 星期四, 10 四月 2025 10:25:29 +0800
Subject: [PATCH] feat

---
 src/layouts/components/ElMenu/MenuItem.vue |   31 ++++++++++++++++++++-----------
 1 files changed, 20 insertions(+), 11 deletions(-)

diff --git a/src/layouts/components/ElMenu/MenuItem.vue b/src/layouts/components/ElMenu/MenuItem.vue
index 357dfbf..e2e4d81 100644
--- a/src/layouts/components/ElMenu/MenuItem.vue
+++ b/src/layouts/components/ElMenu/MenuItem.vue
@@ -1,20 +1,20 @@
 <template>
   <!-- 判断当前页面是否显示,如果hide为true,则不渲染该菜单 -->
-  <div v-if="!item.meta.hide && menus.includes(item.meta.privilege)">
-  <!-- <div v-if="!item.meta.hide"> -->
+  <!-- <div v-if="!item.meta.hide && menus.includes(item.meta.privilege)"> -->
+  <div v-if="item.meta && item.meta.title && !item.meta.hide">
     <!-- 根菜单 -->
     <MenuLink :to="resolvePath()" v-if="!item.children">
       <el-menu-item :index="resolvePath()">
-        <i :class="item.meta.icon || ''"></i>
-        <span slot="title">{{ item.meta.title }}</span>
+        <i :class="(item.meta && item.meta.icon) || ''"></i>
+        <span slot="title">{{ (item.meta && item.meta.title) || '' }}</span>
       </el-menu-item>
     </MenuLink>
 
     <!-- 可展开菜单 -->
     <el-submenu :index="resolvePath()" v-else>
       <template slot="title">
-        <i :class="item.meta.icon"></i>
-        <span slot="title">{{ item.meta.title }}</span>
+        <i :class="(item.meta && item.meta.icon) || ''"></i>
+        <span slot="title">{{ (item.meta && item.meta.title) || '' }}</span>
       </template>
       <!-- 这里递归去展示多级菜单 -->
       <menu-item v-for="(route, index) in item.children" :key="index" :item="route"
@@ -77,13 +77,22 @@
 };
 </script>
 <style lang="less" scoped>
-.is-active {
-  background-color: rgb(245, 245, 245);
+::v-deep .router-link-exact-active .is-active {
+  background: #EFF8FA;
+  border-radius: 8px;
   font-weight: bold;
-  color: #000;
+  color: #05908E;
 }
 
-.el-menu {
-  border-right: unset !important;
+::v-deep .el-menu-item,
+::v-deep .el-submenu__title {
+  border-radius: 8px;
+  height: 40px;
+  line-height: 40px;
+}
+
+::v-deep .el-menu-item:hover,
+::v-deep .el-submenu__title:hover {
+  background: #EFF8FA;
 }
 </style>

--
Gitblit v1.7.1