unibest/src/store/user.ts

33 lines
576 B
TypeScript
Raw Normal View History

2023-12-23 11:27:00 +08:00
import { defineStore } from 'pinia'
import { ref } from 'vue'
2024-02-04 16:00:27 +08:00
const initState = { nickname: '', avatar: '' }
2023-12-23 11:27:00 +08:00
export const useUserStore = defineStore(
'user',
() => {
2024-02-04 16:00:27 +08:00
const userInfo = ref<IUserInfo>({ ...initState })
2023-12-23 11:27:00 +08:00
2024-02-04 16:00:27 +08:00
const setUserInfo = (val: IUserInfo) => {
2023-12-23 11:27:00 +08:00
userInfo.value = val
}
const clearUserInfo = () => {
userInfo.value = undefined
}
2024-02-04 16:00:27 +08:00
const reset = () => {
userInfo.value = { ...initState }
}
2023-12-23 11:27:00 +08:00
return {
userInfo,
setUserInfo,
clearUserInfo,
2024-02-04 16:00:27 +08:00
reset,
2023-12-23 11:27:00 +08:00
}
},
{
persist: true,
},
)