Pre Merge pull request !233 from lehug/master

pull/233/MERGE
lehug 2023-09-11 09:09:05 +00:00 committed by Gitee
commit bd969369f6
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
3 changed files with 9 additions and 4 deletions

View File

@ -47,8 +47,7 @@ service.interceptors.request.use(
let isToken = (config!.headers || {}).isToken === false let isToken = (config!.headers || {}).isToken === false
whiteList.some((v) => { whiteList.some((v) => {
if (config.url) { if (config.url) {
config.url.indexOf(v) > -1 return (isToken = config.url.indexOf(v) > -1)
return (isToken = false)
} }
}) })
if (getAccessToken() && !isToken) { if (getAccessToken() && !isToken) {

View File

@ -44,13 +44,14 @@ export const useUserStore = defineStore('admin-user', {
} }
}, },
actions: { actions: {
async setUserInfoAction() { async setUserInfoAction(force = false) {
if (!getAccessToken()) { if (!getAccessToken()) {
this.resetState() this.resetState()
return null return null
} }
let userInfo = wsCache.get(CACHE_KEY.USER) let userInfo = wsCache.get(CACHE_KEY.USER)
if (!userInfo) { // 登录时指定force=true强制更新菜单避免停留在login的窗口登录后用户信息依然没有替换为最后一次登录用户的问题
if (force || !userInfo) {
userInfo = await getInfo() userInfo = await getInfo()
} }
this.permissions = userInfo.permissions this.permissions = userInfo.permissions

View File

@ -152,6 +152,7 @@ import { useIcon } from '@/hooks/web/useIcon'
import * as authUtil from '@/utils/auth' import * as authUtil from '@/utils/auth'
import { usePermissionStore } from '@/store/modules/permission' import { usePermissionStore } from '@/store/modules/permission'
import { useUserStoreWithOut } from '@/store/modules/user'
import * as LoginApi from '@/api/login' import * as LoginApi from '@/api/login'
import { LoginStateEnum, useFormValid, useLoginState } from './useLogin' import { LoginStateEnum, useFormValid, useLoginState } from './useLogin'
@ -255,6 +256,10 @@ const handleLogin = async (params) => {
authUtil.removeLoginForm() authUtil.removeLoginForm()
} }
authUtil.setToken(res) authUtil.setToken(res)
const userStore = useUserStoreWithOut()
await userStore.setUserInfoAction(true)
await permissionStore.generateRoutes()
if (!redirect.value) { if (!redirect.value) {
redirect.value = '/' redirect.value = '/'
} }