Files
FiDA_Front/src/stores/userInfo.ts

47 lines
1023 B
TypeScript
Raw Normal View History

2026-02-02 13:32:33 +08:00
// 每一个存储的模块命名规则use开头store结尾
2026-02-23 14:45:35 +08:00
import router from '@/router'
2026-02-02 13:32:33 +08:00
import { defineStore } from 'pinia'
import { ref, computed } from 'vue'
import { removeLocal, setLocal } from '@/utils/local'
import MyEvent from '@/utils/myEvent'
export const useUserInfoStore = defineStore('userInfo', () => {
2026-02-23 14:45:35 +08:00
const state = ref({
2026-02-11 16:32:38 +08:00
userInfo: {},
token: '',
2026-02-02 13:32:33 +08:00
2026-02-23 14:45:35 +08:00
})
// getters
const getUserInfo = computed(() => state.value.userInfo)
// actions
const setUserInfo = (data: any) => {
state.value.userInfo = data
}
const setToken = (data: string) => {
state.value.token = data
// setLocal(data, 'token')
}
const logOut = async () => {
// 处理退出登录的一些逻辑
state.value.token = ''
state.value.userInfo = {}
// removeLocal('token')
// MyEvent.emit('clear-generate-state')
// MyEvent.emit('clear-client-state')
// MyEvent.emit('clearAllCache')
router.push({ name: 'login' })
return ""
}
return {
state,
getUserInfo,
setToken,
setUserInfo,
logOut
}
2026-02-02 13:32:33 +08:00
})