user.js 900 Bytes
/*
 * @Description:
 * @Autor: renchao
 * @LastEditTime: 2023-03-07 09:38:47
 */
import { getUserInfo } from "@/api/user";
const state = {
  hasUser: false,
  userInfo: null,
};
const mutations = {
  SET_USERINFO: (state, data) => {
    state.hasUser = true;
    state.userInfo = data;
  },
  RESET_USER: (state) => {
    state.hasUser = false;
    state.userInfo = null;
  },
};

const actions = {
  /**
   * @description: getUserInfo
   * @param {*} commit
   * @author: renchao
   */
  getUserInfo ({ commit }) {
    return new Promise(async (resolve) => {
      let { result: res } = await getUserInfo();
      commit("SET_USERINFO", res);
      resolve(true);
    });
  },
  /**
   * @description: resetState
   * @param {*} commit
   * @author: renchao
   */
  resetState ({ commit }) {
    commit("RESET_USER");
  },
};
export default {
  namespaced: true,
  state,
  mutations,
  actions,
};