From a2441175073f8b09a7eff29effd7e3e617de2f7d Mon Sep 17 00:00:00 2001
From: lzhe <lzhe@example.com>
Date: 星期四, 06 六月 2024 18:23:01 +0800
Subject: [PATCH] Merge branch 'master' of http://www.beijingsoft.cn:9090/r/smart-web

---
 src/layout/components/NavMenu.vue |   36 +++++++++++++++++++++++++++++++++---
 1 files changed, 33 insertions(+), 3 deletions(-)

diff --git a/src/layout/components/NavMenu.vue b/src/layout/components/NavMenu.vue
index 8d4d083..1786087 100644
--- a/src/layout/components/NavMenu.vue
+++ b/src/layout/components/NavMenu.vue
@@ -1,3 +1,11 @@
+<!--
+ * @Author: lzhe lzhe@example.com
+ * @Date: 2024-04-22 16:38:17
+ * @LastEditors: lzhe lzhe@example.com
+ * @LastEditTime: 2024-05-11 17:30:06
+ * @FilePath: /smart-web/src/layout/components/NavMenu.vue
+ * @Description: 杩欐槸榛樿璁剧疆,璇疯缃甡customMade`, 鎵撳紑koroFileHeader鏌ョ湅閰嶇疆 杩涜璁剧疆: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
+-->
 <template>
 	<div v-if="navMenus.length<=0" style="padding:20px;">
 		<el-alert title="鏃犲瓙闆嗚彍鍗�" center type="info" :closable="false"></el-alert>
@@ -5,7 +13,12 @@
 	<template v-for="navMenu in navMenus" v-bind:key="navMenu">
 		<el-menu-item v-if="!hasChildren(navMenu)" :index="navMenu.path">
 			<a v-if="navMenu.meta&&navMenu.meta.type=='link'" :href="navMenu.path" target="_blank" @click.stop='()=>{}'></a>
-			<el-icon v-if="navMenu.meta&&navMenu.meta.icon"><component :is="navMenu.meta.icon || 'el-icon-menu'"/></el-icon>
+			<!-- <el-icon><Warning /></el-icon> -->
+			<el-icon>
+				 <component v-if="icons.includes(navMenu.source)" :is="navMenu.source"/>
+				 <component v-if="!icons.includes(navMenu.source)" :is="'TakeawayBox'"/>
+				<!-- <el-icon v-if="navMenu.meta&&navMenu.meta.icon"><component :is="navMenu.meta.icon || 'el-icon-menu'"/></el-icon> -->
+			</el-icon>
 			<template #title>
 				<span>{{navMenu.meta.title}}</span>
 				<span v-if="navMenu.meta.tag" class="menu-tag">{{navMenu.meta.tag}}</span>
@@ -13,7 +26,11 @@
 		</el-menu-item>
 		<el-sub-menu v-else :index="navMenu.path">
 			<template #title>
-				<el-icon v-if="navMenu.meta&&navMenu.meta.icon"><component :is="navMenu.meta.icon || 'el-icon-menu'"/></el-icon>
+				<el-icon v-if="navMenu.parentId!='0' &&navMenu.meta&&navMenu.meta.icon">
+					<component v-if="icons.includes(navMenu.source)" :is="navMenu.source"/>
+					<component v-if="!icons.includes(navMenu.source)" :is="'TakeawayBox'"/>
+					<!-- <component :is="navMenu.meta.icon || 'el-icon-menu'"/> -->
+				</el-icon>
 				<span>{{navMenu.meta.title}}</span>
 				<span v-if="navMenu.meta.tag" class="menu-tag">{{navMenu.meta.tag}}</span>
 			</template>
@@ -23,16 +40,29 @@
 </template>
 
 <script>
+	import * as ElementPlusIconsVue from '@element-plus/icons-vue'
+	let icons = []
+	for (const [key, component] of Object.entries(ElementPlusIconsVue)) {
+	    icons.push(key)
+	}
 	export default {
 		name: 'NavMenu',
 		props: ['navMenus'],
 		data() {
-			return {}
+			return {
+				icons
+			}
 		},
+		components: {
+	        ...ElementPlusIconsVue
+	    },
 		methods: {
 			hasChildren(item) {
 				return item.children && !item.children.every(item => item.meta.hidden)
+				//return item.parentId == '0';
 			}
+		},
+		mounted(){
 		}
 	}
 </script>

--
Gitblit v1.9.3