From 7b80254491eaad6005ef4bcaa4d022721f0c0576 Mon Sep 17 00:00:00 2001
From: hejianhao <15708179461@qq.com>
Date: 星期二, 01 四月 2025 10:37:30 +0800
Subject: [PATCH] MenuItem.vue安全地访问 meta 属性

---
 src/layouts/components/ElMenu/MenuItem.vue |   10 +++++-----
 1 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/src/layouts/components/ElMenu/MenuItem.vue b/src/layouts/components/ElMenu/MenuItem.vue
index 1db373f..d8a076b 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 && 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"

--
Gitblit v1.7.1