login.js 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. import { Store } from "vuex";
  2. const state = {
  3. token: localStorage.getItem('token') ? JSON.parse(localStorage.getItem('token')) : '', // 当前登录的token
  4. userInfo: localStorage.getItem('userInfo') ? JSON.parse(localStorage.getItem('userInfo')) : '',
  5. menuIndex: localStorage.getItem('menuIndex') ? JSON.parse(localStorage.getItem('menuIndex')) : '',
  6. keepAliveList: [],
  7. idArr:[],
  8. sidArr:[],
  9. steady_idArr:[],
  10. };
  11. const getters = {
  12. token: state => state.token,
  13. userInfo: state => state.userInfo,
  14. menuIndex: state => state.menuIndex,
  15. idArr: state => state.idArr,
  16. sidArr: state => state.sidArr,
  17. steady_idArr: state => state.steady_idArr,
  18. keepAliveList: state => state.keepAliveList
  19. };
  20. const mutations = {
  21. setIdArr(state, data) {
  22. state.idArr = data;
  23. },
  24. setSidArr(state, data) {
  25. state.sidArr = data;
  26. },
  27. setSteady_idArr(state, data) {
  28. state.steady_idArr = data;
  29. },
  30. setToken(state, data) {
  31. localStorage.setItem('token', JSON.stringify(data));
  32. state.token = JSON.parse(localStorage.getItem('token'));
  33. },
  34. clearToken() {
  35. localStorage.removeItem('token');
  36. },
  37. setUser(state, data) {
  38. localStorage.setItem('userInfo', JSON.stringify(data));
  39. state.userInfo = JSON.parse(localStorage.getItem('userInfo'));
  40. },
  41. setMenu(state, data) {
  42. localStorage.setItem('menuIndex', JSON.stringify(data));
  43. state.menuIndex = JSON.parse(localStorage.getItem('menuIndex'));
  44. },
  45. pushKeepAliveList(state, item) {
  46. let set = new Set(state.keepAliveList);
  47. set.add(item);
  48. state.keepAliveList = Array.from(set);
  49. },
  50. popKeepAliveList(state, item) {
  51. let set = new Set(state.keepAliveList);
  52. if (set.has(item)) {
  53. set.delete(item);
  54. }
  55. state.keepAliveList = Array.from(set);
  56. }
  57. };
  58. const actions = {};
  59. export default {
  60. state,
  61. getters,
  62. actions,
  63. mutations
  64. };