feat: userStore 新增用户信息数据存储

This commit is contained in:
lonewolfyx 2026-03-09 09:22:56 +08:00
parent d37f6f5cb8
commit 4570f38018
2 changed files with 119 additions and 110 deletions

View File

@ -1,11 +1,11 @@
import { defineStore } from 'pinia'
import { ref } from 'vue'
import {defineStore} from 'pinia'
import {ref} from 'vue'
import config from '@/config'
import storage from '@/utils/storage'
import constant from '@/utils/constant'
import { isHttp, isEmpty } from "@/utils/validate"
import { getInfo, login, logout } from '@/api/login'
import { getToken, removeToken, setToken } from '@/utils/auth'
import {isEmpty, isHttp} from "@/utils/validate"
import {getInfo, login, logout} from '@/api/login'
import {getToken, removeToken, setToken} from '@/utils/auth'
import defAva from '@/static/images/profile.jpg'
const baseUrl = config.baseUrl
@ -17,6 +17,7 @@ export const useUserStore = defineStore('user', () => {
const avatar = ref(storage.get(constant.avatar))
const roles = ref(storage.get(constant.roles))
const permissions = ref(storage.get(constant.permissions))
const userInfo = ref(storage.get(constant.userInfo))
const SET_TOKEN = (val) => {
token.value = val
@ -42,6 +43,11 @@ export const useUserStore = defineStore('user', () => {
storage.set(constant.permissions, val)
}
const SET_USER_INFO = (val) => {
userInfo.value = val
storage.set(constant.userInfo, val)
}
// 登录
const loginAction = (userInfo) => {
const username = userInfo.username.trim()
@ -79,6 +85,7 @@ export const useUserStore = defineStore('user', () => {
SET_ID(userid)
SET_NAME(username)
SET_AVATAR(avatar)
SET_USER_INFO(user)
resolve(res)
}).catch(error => {
reject(error)
@ -109,6 +116,7 @@ export const useUserStore = defineStore('user', () => {
avatar,
roles,
permissions,
userInfo,
SET_AVATAR,
login: loginAction,
getInfo: getInfoAction,

View File

@ -3,7 +3,8 @@ const constant = {
id: 'user_id',
name: 'user_name',
roles: 'user_roles',
permissions: 'user_permissions'
}
permissions: 'user_permissions',
userInfo: 'userInfo'
}
export default constant
export default constant