Newer
Older
KaiFengH5 / src / pinia / store.js
@鲁yixuan 鲁yixuan on 12 Jul 1 KB update
import { defineStore } from 'pinia';

export const useStore = defineStore('HomePage', {
  state: () => {
    return {
      token: '',
      userNo: '', //用户名称
      loading: false, //全局loading效果
      imageUrl: '', //用户默认头像
      userName: '', //用户姓名
      userDeptName: '', //用户部门
      appMenuAuthList: [], //角色访问菜单权限
      authType: 1, //权限类型  1-管理 2-操作
    };
  },
  persist: {
    enabled: true,
    // 自定义持久化参数
    strategies: [
      {
        // 自定义key
        key: 'userInfo',
        // 自定义存储方式,默认sessionStorage
        storage: sessionStorage,
        // 指定要持久化的数据,默认所有 state 都会进行缓存,可以通过 paths 指定要持久化的字段,其他的则不会进行持久化。
        paths: ['imageUrl', 'userName', 'userDeptName', 'authType', 'token', 'userNo', 'appMenuAuthList'],
      },
    ],
  },
  getters: {},
  actions: {
    showLoading(state) {
      this.loading = true;
    },
    hideLoading(state) {
      this.loading = false;
    },
  },
});