登录后强制获取当前用户信息
parent
c6493767ce
commit
34fdcd44f4
|
|
@ -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
|
||||||
|
|
|
||||||
|
|
@ -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,8 @@ const handleLogin = async (params) => {
|
||||||
authUtil.removeLoginForm()
|
authUtil.removeLoginForm()
|
||||||
}
|
}
|
||||||
authUtil.setToken(res)
|
authUtil.setToken(res)
|
||||||
|
const userStore = useUserStoreWithOut()
|
||||||
|
await userStore.setUserInfoAction(true)
|
||||||
if (!redirect.value) {
|
if (!redirect.value) {
|
||||||
redirect.value = '/'
|
redirect.value = '/'
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue