liudong
2024-08-09 60f1b7ebca0d832069e9811998610b8964a474e0
src/store/modules/user/index.ts
@@ -5,10 +5,11 @@
  getUserInfo,
  LoginData,
} from '@/api/user';
import { setToken, clearToken,setUserInfo } from '@/utils/auth';
import { setToken, clearToken, setUserInfo, setUserResources, clearUserResources } from "@/utils/auth";
import { removeRouteListener } from '@/utils/route-listener';
import { UserState } from './types';
import useAppStore from '../app';
const useUserStore = defineStore('user', {
  state: (): UserState => ({
@@ -28,6 +29,7 @@
    accountId: undefined,
    certification: undefined,
    role: '',
    resources:undefined,
  }),
  getters: {
@@ -50,6 +52,7 @@
    // Reset user's information
    resetInfo() {
      clearUserResources()
      this.$reset();
    },
@@ -61,7 +64,7 @@
    },
    // Login
    async login(loginForm: LoginData) {
    async login(loginForm: LoginData):string {
      try {
        const res = await userLogin(loginForm);
        setToken(res.data.access_token);
@@ -70,7 +73,14 @@
          name: res.data.nickname,
          email: res.data.email,
        };
        this.resources=res.data.resources;
        setUserInfo(JSON.stringify(userInfo));
        setUserResources(JSON.stringify(this.resources))
        for (const r of this.resources) {
          if (r.menuType == 0) {
            return r.component
          }
        }
      } catch (err) {
        clearToken();
        throw err;