From ff51b72dac6c5eaf960890fb47d9fb322116f96f Mon Sep 17 00:00:00 2001 From: Soybean Date: Fri, 7 Jun 2024 11:28:49 +0800 Subject: [PATCH] fix(projects): fix get user info when page reload --- src/router/guard/route.ts | 5 ++--- src/store/modules/auth/index.ts | 20 ++++++++++++++++---- 2 files changed, 18 insertions(+), 7 deletions(-) diff --git a/src/router/guard/route.ts b/src/router/guard/route.ts index 0a00ac71..7bb238d5 100644 --- a/src/router/guard/route.ts +++ b/src/router/guard/route.ts @@ -126,9 +126,6 @@ async function initRoute(to: RouteLocationNormalized): Promise { localStg.set('token', loginToken.token); localStg.set('refreshToken', loginToken.refreshToken); - // 2. get user info and update store - const pass = await updateUserInfo(); + // 2. get user info + const pass = await getUserInfo(); if (pass) { token.value = loginToken.token; @@ -104,7 +104,7 @@ export const useAuthStore = defineStore(SetupStoreId.Auth, () => { return false; } - async function updateUserInfo() { + async function getUserInfo() { const { data: info, error } = await fetchGetUserInfo(); if (!error) { @@ -117,6 +117,18 @@ export const useAuthStore = defineStore(SetupStoreId.Auth, () => { return false; } + async function initUserInfo() { + const hasToken = getToken(); + + if (hasToken) { + const pass = await getUserInfo(); + + if (!pass) { + resetStore(); + } + } + } + return { token, userInfo, @@ -125,6 +137,6 @@ export const useAuthStore = defineStore(SetupStoreId.Auth, () => { loginLoading, resetStore, login, - updateUserInfo + initUserInfo }; });