From 5c9de05aa672871e6ef73b24e327dc8740aa0f1c Mon Sep 17 00:00:00 2001 From: zhangdaiscott Date: Mon, 21 Mar 2022 15:48:54 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=8F=8B=E5=A5=BD=E6=8F=90?= =?UTF-8?q?=E7=A4=BA=EF=BC=8C=E6=8F=90=E9=86=92=E5=88=87=E6=8D=A2vue3?= =?UTF-8?q?=E8=B7=AF=E7=94=B1=E8=8F=9C=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/store/modules/permission.ts | 29 ++++++++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/src/store/modules/permission.ts b/src/store/modules/permission.ts index 194b01c..debe2c1 100644 --- a/src/store/modules/permission.ts +++ b/src/store/modules/permission.ts @@ -197,7 +197,7 @@ export const usePermissionStore = defineStore({ // 后台菜单构建 case PermissionModeEnum.BACK: - const { createMessage } = useMessage(); + const { createMessage, createWarningModal } = useMessage(); // 菜单加载提示 // createMessage.loading({ // content: t('sys.app.menuLoading'), @@ -210,6 +210,33 @@ export const usePermissionStore = defineStore({ try { this.changePermissionCode(); routeList = (await getMenuList()) as AppRouteRecordRaw[]; + // update-begin----author:sunjianlei---date:20220315------for: 判断是否是 vue3 版本的菜单 --- + let hasIndex: boolean = false + let hasIcon: boolean = false + for (let menuItem of routeList) { + // 条件1:判断组件是否是 layouts/default/index + if (!hasIndex) { + hasIndex = menuItem.component === 'layouts/default/index' + } + // 条件2:判断图标是否带有 冒号 + if (!hasIcon) { + hasIcon = !!menuItem.meta?.icon?.includes(':') + } + // 满足任何一个条件都直接跳出循环 + if (hasIcon || hasIndex) { + break + } + } + // 两个条件都不满足,就弹出提示框 + if (!hasIcon && !hasIndex) { + // 延迟1.5秒之后再出现提示,否则提示框出不来 + setTimeout(() => createWarningModal({ + title: '提示', + content: '检测到你可能使用了非vue3版本的数据库表,这将会导致菜单或其他功能出现异常,请更换成vue3版本的数据库表后刷新。' + + '
文档地址:http://vue3.jeecg.com/2671576', + }), 1500) + } + // update-end----author:sunjianlei---date:20220315------for: 判断是否是 vue3 版本的菜单 --- } catch (error) { console.error(error); }