vue3 piana 使用记录

456 阅读1分钟

简单记录定义user,对username的操作

store/user如下,实例化的时候,会自动从浏览器本地缓存中,获取username。后续如果username有变更,需要通过setUsername(newUsername)方法去更新username的值

import { defineStore } from 'piana'
import { storageLocal } from "@pureadmin/utils";
import { type DataInfo, storageKey } from "@/utils/auth";


export const user = defineStore({
  state: () => ({
    username: storageLocal().getItem<DataInfo<number>>(storageKey)?.username ?? ""
  }),
  actions: ({ state }) => ({
    getUsername() {
      return state.username
    },
    setUsername(newUsername) {
      state.username = newUsername
    }
  })
})


@/utils/auth文件简要内容


export interface DataInfo<T> {
  /** 用户名 */
  username?: string;
}
export const storageKey = "user-info";