diff --git a/src/components/my-form/my-form.vue b/src/components/my-form/my-form.vue index 3fb3dc110ef3936dd6c6343607fb87b3ea034ba6..3227607d9602d79350bd06c334297c84edfa8786 100644 --- a/src/components/my-form/my-form.vue +++ b/src/components/my-form/my-form.vue @@ -21,13 +21,7 @@ + \ No newline at end of file diff --git a/src/hooks/mixin.ts b/src/hooks/mixin.ts index bb3985119ecba0c3485fc5fa8491ff4f54ebb08d..d2328d3f8f34f5a3af77b0dd64eb6075ec0989ab 100644 --- a/src/hooks/mixin.ts +++ b/src/hooks/mixin.ts @@ -111,7 +111,7 @@ export function dialogMixin({ resetForm(unref(refDialogForm)); dialog.name = 'insert'; dialog.open = true; - dialog.form.id = undefined; + dialog.form[id] = undefined; callback?.(dialog.form); } // 删除信息 diff --git a/src/router/guarder.ts b/src/router/guarder.ts index ea60409263dfd97e4c7c0a302393b72c013a537c..ad84dafa9ac3b02cf5380b003100586eaaf42c86 100644 --- a/src/router/guarder.ts +++ b/src/router/guarder.ts @@ -33,56 +33,31 @@ export default function (router: Router) { * 全局前置守卫 */ router.beforeEach(async (to, from, next) => { - // 外链地址 - if (isExternal(to.path)) { - window.open(to.path, '_block'); - } else { - document.title = ((TITLE as string) || (to.meta.title as string)).toString(); + document.title = ((TITLE as string) || (to.meta.title as string)).toString(); - // 开启进度条 - NProgress.start(); + NProgress.start(); - // 清除正在进行中的所有请求 - cancelFn(); + cancelFn(); - //判断当前代码版本是否与服务器中代码版本一致,如不一致则刷新页面获取最新 - versionTood(); + versionTood(); - // 联合登陆功能添加token - if (to.query.uid) { - if (to.query.pputoken) $store.user.token = to.query.pputoken; - $store.user.uid = to.query.uid; - to.query = {}; - } - // 512页面 - if (to.path === '/512') { + if ($store.user.token) { + if (!$store.guarder.addRouter.length) { + await $store.guarder.GenerateRoutes(); + + // hack方法 确保addRoutes已完成 + next({ ...to, replace: false }); + } else { next(); - return; } - /** 已经登录了存在token */ - if ($store.user.token || $store.user.uid) { - // 判断当前用户是否已拉取完user_info信息 - if (!$store.user.rolesGets.length) await $store.user.GetInfo(); - - // 生成对应权限的路由 - if (!$store.guarder.Menus.length) { - await $store.guarder.GenerateRoutes(); - - // hack方法 确保addRoutes已完成 - next({ ...to, replace: false }); - } else { - next(); - } + } else { + if (whiteRouter(to.path)) { + next(); } else { - if (whiteRouter(to.path)) { - // 在免登录白名单,直接进入 - next(); - } else { - next({ - name: '/login', - query: { redirect: to.fullPath } - }); - } + next({ + name: '/login', + query: { redirect: to.fullPath } + }); } } }); diff --git a/src/store/guarder.js b/src/store/guarder.js index 6114336d7c1f915a91fc43cc19abe48b9aa9c31d..d8b4cb9b0ddf61fa1becdaa66f31c30f34b5d511 100644 --- a/src/store/guarder.js +++ b/src/store/guarder.js @@ -155,6 +155,11 @@ function filterAsyncRouter(data) { // 左边菜单数据 if (visible !== 1) MenusData[id] = cloneDeep(RoutesData[id]); + + // 外链地址不需要添加进路由表 + if(isExternal(path)){ + delete RoutesData[id] + } }); // 树形结构数据 diff --git a/src/store/user.js b/src/store/user.js index 3c8f59bd92294791dc0396f1b597d5879f8cdca2..e714799559e862e784ee934cd9a15d1eed0be523 100644 --- a/src/store/user.js +++ b/src/store/user.js @@ -158,7 +158,6 @@ export default defineStore('user', { return new Promise((resolve, reject) => { authLogout() .then(() => { - this.LogOutSET(); resolve(); }) .catch((error) => { @@ -179,7 +178,6 @@ export default defineStore('user', { this.menuTabsList = []; this.activeMenu = ''; this.activeMenuTab = ''; - $store.guarder.Menus = []; } }, // 开启数据缓存 diff --git a/src/views/system/user/index.vue b/src/views/system/user/index.vue index 425c49de408231d8f966c2b5e0c911e3f9b83cc6..0fe63d4db16fb3c2db3afc7ec64af77bf48a9442 100644 --- a/src/views/system/user/index.vue +++ b/src/views/system/user/index.vue @@ -66,7 +66,7 @@