zxl
8 小时以前 172933f098017bc4c4f57dcda0d490ea12bb13bb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
import { setUserInfo, getUserInfo, getToken } from "@/utils/auth";
 
// import { ServeLogout } from "@/api/user";
 
let state = {
  // 用户ID
  id: 0,
  // 用户昵称
  name: "",
  // 个性头像
  face: require("@/assets/image/detault-avatar.jpg"),
  // 名片背景
  visitCardBag: require("@/assets/image/default-user-banner.png"),
  // 当前登录状态
  loginStatus: false,
  toUser:""
};
 
// 判断用户是否登录
if (getToken()) {
  let userInfo = getUserInfo();
  state.name = userInfo.name;
  state.id = userInfo.id;
  state.face = userInfo.face ? userInfo.face : state.avatar;
  state.loginStatus = true;
}
 
const User = {
  state,
  mutations: {
    // 用户退出登录
    USER_LOGOUT(state) {
      state.id = 0;
      state.face = "";
      state.name = "";
      state.loginStatus = false;
    },
 
    // 设置用户登录状态
    UPDATE_LOGIN_STATUS(state) {
      state.loginStatus = true;
    },
 
    // 更新用户信息
    UPDATE_USER_INFO(state, data) {
      for (const key in data) {
        if (state.hasOwnProperty(key)) {
          state[key] = data[key];
        }
      }
 
      // 保存用户信息到缓存
      setUserInfo({
        id: state.id,
        face: state.face,
        name: state.name,
      });
    },
  },
  actions: {
    // 退出登录处理操作
    ACT_USER_LOGOUT({ commit }) {
      commit("USER_LOGOUT");
      // ServeLogout().finally(() => {
      //   removeAll();
      //   location.reload();
      // });
    },
  },
};
 
export default User;