From bfbb1ea3c6bb2dd7db064fb189290a1bfcf6c9cd Mon Sep 17 00:00:00 2001 From: seatonwan9 Date: 星期四, 28 八月 2025 02:14:48 +0800 Subject: [PATCH] 提交源码 --- src/router/index.ts | 62 +++++++++++++++++++++++++++---- 1 files changed, 54 insertions(+), 8 deletions(-) diff --git a/src/router/index.ts b/src/router/index.ts index 6f447b2..cd9b7b9 100644 --- a/src/router/index.ts +++ b/src/router/index.ts @@ -12,6 +12,7 @@ import { useUserInfo } from '@/stores/modules/userInfo' import { useCommonInfo } from '@/stores/modules/common' // 鐘舵�佺鐞嗗櫒 import { useNavTabs } from '@/stores/modules/navTabs' // 鏍囩瀵艰埅 +import { queryUserDetail } from '@/api/userInfo' const router = createRouter({ history: createWebHistory('/manage/'), @@ -20,7 +21,7 @@ return { top: 0 } }, }) -router.beforeEach((to, from, next) => { +router.beforeEach(async (to, from, next) => { console.log("to",to) const userStore = useUserInfo() // * 鍦ㄨ烦杞矾鐢变箣鍓嶏紝娓呴櫎鎵�鏈夌殑璇锋眰 @@ -41,11 +42,17 @@ } // 濡傛灉娌℃湁token锛岃缃竴涓粯璁oken骞剁户缁� if (!userStore.getAdminToken) { - const obj: any = { - adminToken: 'dev-token', - screenToken: '', + const localUserInfo = localStorage.getItem('userInfo') + if (localUserInfo) { + const userInfo = JSON.parse(localUserInfo) + if (userInfo.adminToken) { + const obj: any = { + adminToken: userInfo.adminToken, + screenToken: '', + } + userStore.updateUserInfo(obj) + } } - userStore.updateUserInfo(obj) } next() return @@ -58,12 +65,17 @@ } else { if (to.query.token) { const token = to.query.token as string - localStorage.setItem('lastRecordTime', new Date().getTime()) + localStorage.setItem('lastRecordTime', new Date().getTime().toString()) const obj: any = { adminToken: token, screenToken: '', } userStore.updateUserInfo(obj) + const localUserInfo = localStorage.getItem('userInfo') + if (localUserInfo) { + const userInfo = JSON.parse(localUserInfo) + userStore.updateUserDetail(userInfo) + } // chrome document.body.scrollTop = 0 // firefox @@ -72,9 +84,43 @@ window.pageYOffset = 0 next() } else if (!userStore.getAdminToken) { - // 濡傛灉娌℃湁锛屽垯璺宠嚦鐧诲綍椤甸潰 - next({ path: '/loginT' }) + // 浠� localStorage 涓幏鍙� userInfo 鐨� adminToken + const localUserInfo = localStorage.getItem('userInfo') + if (localUserInfo) { + try { + const userInfo = JSON.parse(localUserInfo) + if (userInfo.adminToken) { + // 濡傛灉鑾峰彇鍒� adminToken锛屽垯鏇存柊 userStore + userStore.updateUserInfo({ + adminToken: userInfo.adminToken, + screenToken: userInfo.screenToken || '', + fullUnitName: userInfo.fullUnitName || '', + empCode: userInfo.empCode || '', + menuList: userInfo.menuList || [] + }) + // 鍚屾椂鏇存柊鐢ㄦ埛璇︾粏淇℃伅 + userStore.updateUserDetail(userInfo) + next() + } else { + // 濡傛灉娌℃湁 adminToken锛屽垯鐢ㄦ埛鏈櫥褰� + next({ path: '/loginT' }) + } + } catch (error) { + console.error('瑙f瀽 localStorage 涓殑 userInfo 澶辫触:', error) + // 瑙f瀽澶辫触锛岃涓虹敤鎴锋湭鐧诲綍 + next({ path: '/loginT' }) + } + } else { + // 濡傛灉娌℃湁 userInfo锛屽垯鐢ㄦ埛鏈櫥褰� + next({ path: '/loginT' }) + } } else { + // 鑾峰彇鐢ㄦ埛淇℃伅 + const localUserInfo = localStorage.getItem('userInfo') + if (localUserInfo) { + const userInfo = JSON.parse(localUserInfo) + userStore.updateUserDetail(userInfo) + } next() } } -- Gitblit v1.8.0