给获取用户信息设置缓存时间

This commit is contained in:
bob
2024-08-23 10:02:09 +08:00
parent b34847f747
commit 6b33b57eb4
2 changed files with 11 additions and 3 deletions

View File

@@ -2,3 +2,4 @@ export const CLIENT_TYPE = 2
export const CLIENT_NAME = 'web'
export const CLIENT_VERSION = '0.0.1'
export const CLIENT_ID = 'XXAA'
export const USER_DATA_EXPIRE = 3600

View File

@@ -1,6 +1,7 @@
import { defineStore } from 'pinia'
import { ref } from 'vue'
import { userInfoService } from '@/api/user'
import { USER_DATA_EXPIRE } from '@/const/userConst'
// 用户模块
export const userStore = defineStore(
@@ -48,9 +49,14 @@ export const userStore = defineStore(
}
const user = ref({})
const loginTime = ref(0)
const getUser = async () => {
const res = await userInfoService()
user.value = res.data.data
const now = new Date().getTime()
if (loginTime.value === 0 || now - loginTime.value > USER_DATA_EXPIRE * 1000) {
const res = await userInfoService()
user.value = res.data.data
loginTime.value = now
}
}
const setUser = (obj) => {
user.value = obj
@@ -65,7 +71,8 @@ export const userStore = defineStore(
clearRt,
user,
getUser,
setUser
setUser,
loginTime
}
},
{