import { defineStore } from 'pinia' import { useStorage } from '@vueuse/core' const token = useStorage('token') const userInfo = useStorage('user-info') export const useUserStore = defineStore('user', () => { // const $info = ref({ // name: 'Aresn', // avatar: 'https://csdn-665-inscode.s3.cn-north-1.jdcloud-oss.com/inscode/202303/622eda98dfef6c4fdb84ccca/1680089871598-75919715-hvlk99ddLLhyNTXtl4TaQAgeFBFz4ZGD/avatar', // pro: 1 // }) const $info = computed(() => userInfo.value ? JSON.parse(userInfo.value) : {}) const $isSignIn = computed(() => !!token.value) function $signOut () { token.value = null userInfo.value = null } async function $updateUserInfo () { if (!token.value) return const { data } = await useRequest('/v1/user/user_info') userInfo.value = JSON.stringify(data.value.data) } return { $info, $isSignIn, $signOut, $updateUserInfo } })