36 lines
832 B
TypeScript
36 lines
832 B
TypeScript
|
|
import { defineStore } from 'pinia'
|
|
/**
|
|
* 用户信息
|
|
* @methods setUserInfos 设置用户信息
|
|
*/
|
|
export const useUserInfo = defineStore('userInfo', {
|
|
state: (): UserInfosStates => ({
|
|
userInfos: uni.getStorageSync('userInfo'),
|
|
token: uni.getStorageSync('token'),
|
|
}),
|
|
actions: {
|
|
async getUserInfo() {
|
|
const res = await userInfoApi({})
|
|
const data = res.data
|
|
this.setUserInfos(data)
|
|
return data
|
|
},
|
|
setUserInfos(userInfos) {
|
|
// 存储用户信息到浏览器缓存
|
|
uni.setStorageSync('userInfo', userInfos)
|
|
this.userInfos = userInfos
|
|
},
|
|
setToken(token: string) {
|
|
// 存储用户信息到浏览器缓存
|
|
uni.setStorageSync('token', token)
|
|
// 更新 store 状态
|
|
this.token = token
|
|
},
|
|
logout() {
|
|
uni.clearStorageSync()
|
|
this.userInfos = '';
|
|
this.token = '';
|
|
},
|
|
},
|
|
}) |