index.ts 728 B

1234567891011121314151617181920212223242526272829
  1. import { defineStore, acceptHMRUpdate } from "pinia";
  2. import { RouteRecordRaw } from "vue-router";
  3. export const useStore = defineStore({
  4. id: "index",
  5. state: () => ({
  6. userInfo: {}, // 当前的用户信息
  7. routers: [], // 返回的所有路由
  8. asyncRoutesMark: false, // 是否添加过路由
  9. }),
  10. getters: {
  11. // 取值
  12. getRoutersList(): RouteRecordRaw[] {
  13. return this.routers;
  14. }
  15. },
  16. actions: {
  17. // 方法
  18. setRouters(arr: any) {
  19. this.routers = arr;
  20. },
  21. setAsyncRoutesMark(val: boolean) {
  22. this.asyncRoutesMark = val;
  23. },
  24. },
  25. persist: true, // 是否持久化
  26. });
  27. if (import.meta.hot) {
  28. import.meta.hot.accept(acceptHMRUpdate(useStore, import.meta.hot));
  29. }