From c1e2ec17485606ba8d2d6de9520396e55248ff6d Mon Sep 17 00:00:00 2001
From: web <candymxq888@outlook.com>
Date: 星期二, 25 三月 2025 17:10:50 +0800
Subject: [PATCH] feat:添加界面,接入设备数据

---
 src/components/Menu/MenuItem.vue |   35 +++++++++++++++++++++++++++++++++++
 1 files changed, 35 insertions(+), 0 deletions(-)

diff --git a/src/components/Menu/MenuItem.vue b/src/components/Menu/MenuItem.vue
new file mode 100644
index 0000000..191667b
--- /dev/null
+++ b/src/components/Menu/MenuItem.vue
@@ -0,0 +1,35 @@
+<script setup>
+
+const props = defineProps({
+    item: {
+        type: Object,
+        default: () => {}
+    }
+})
+
+</script>
+
+<template>
+    <template v-if="!item?.hidden">
+        <!-- 只有一个子菜单的情况 -->
+        <template v-if="props.item?.children?.length === 0">
+            <el-menu-item :index="props.item?.id">{{props.item?.name}}</el-menu-item>
+        </template>
+
+        <!-- 多个子菜单的情况 -->
+        <el-sub-menu v-else :index="props.item?.id" popper-append-to-body>
+            <template #title>
+                <span>{{props.item?.name}}</span>
+            </template>
+            <MenuItem
+                v-for="(item, index) in props.item?.children"
+                :key="index"
+                :item="item"
+            ></MenuItem>
+        </el-sub-menu>
+    </template>
+</template>
+
+<style scoped lang="scss">
+
+</style>
\ No newline at end of file

--
Gitblit v1.9.3