From 40f3fbbd779e66556630e82075d305ae9adf6a72 Mon Sep 17 00:00:00 2001 From: xlsea Date: Thu, 5 Jun 2025 21:45:34 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=96=B0=E5=A2=9E=E7=BA=A7=E8=81=94?= =?UTF-8?q?=E8=8F=9C=E5=8D=95=E5=88=A0=E9=99=A4=E6=8C=89=E9=92=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/custom/menu-tree.vue | 6 +- src/locales/langs/en-us.ts | 7 +- src/locales/langs/zh-cn.ts | 7 +- src/service/api/system/menu.ts | 8 ++ src/typings/app.d.ts | 2 + src/views/system/menu/index.vue | 13 ++- .../modules/menu-cascade-delete-modal.vue | 107 ++++++++++++++++++ 7 files changed, 145 insertions(+), 5 deletions(-) create mode 100644 src/views/system/menu/modules/menu-cascade-delete-modal.vue diff --git a/src/components/custom/menu-tree.vue b/src/components/custom/menu-tree.vue index fdb9960f..721204aa 100644 --- a/src/components/custom/menu-tree.vue +++ b/src/components/custom/menu-tree.vue @@ -9,11 +9,13 @@ defineOptions({ name: 'MenuTree' }); interface Props { immediate?: boolean; + showHeader?: boolean; [key: string]: any; } const props = withDefaults(defineProps(), { - immediate: true + immediate: true, + showHeader: true }); const { bool: expandAll } = useBoolean(); @@ -106,7 +108,7 @@ defineExpose({ diff --git a/src/views/system/menu/modules/menu-cascade-delete-modal.vue b/src/views/system/menu/modules/menu-cascade-delete-modal.vue new file mode 100644 index 00000000..3f94a117 --- /dev/null +++ b/src/views/system/menu/modules/menu-cascade-delete-modal.vue @@ -0,0 +1,107 @@ + + + + +