user.js 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. // 从持久化存储中读取初始值
  2. const getStorageItem = (key, defaultValue = "") => {
  3. // #ifdef H5
  4. try {
  5. const item = window.sessionStorage.getItem(key);
  6. return item ? JSON.parse(item) : defaultValue;
  7. } catch (e) {
  8. return defaultValue;
  9. }
  10. // #endif
  11. // #ifndef H5
  12. try {
  13. return uni.getStorageSync(key) || defaultValue;
  14. } catch (e) {
  15. return defaultValue;
  16. }
  17. // #endif
  18. };
  19. export const state = {
  20. //用户数据
  21. userInfo: getStorageItem('userInfo', {}),
  22. userCheckInfo: getStorageItem('userCheckInfo', {}),
  23. userLoginId: getStorageItem('userLoginId', ""),
  24. token: getStorageItem('token', ""),
  25. avatar: getStorageItem('avatar', ""),
  26. userStatus: getStorageItem('userStatus', "")
  27. };
  28. export const mutations = {
  29. setUserModules(state, obj = {}) {
  30. if (obj) {
  31. state[obj.title] = obj.data;
  32. // #ifdef H5
  33. window.sessionStorage.setItem(obj.title, JSON.stringify(obj.data));
  34. // #endif
  35. // #ifndef H5
  36. uni.setStorageSync(obj.title, obj.data);
  37. // #endif
  38. }
  39. },
  40. // 保存用户状态
  41. setUserStatus(state, data) {
  42. if (data) {
  43. state.userStatus = data;
  44. // #ifdef H5
  45. window.sessionStorage.setItem('userStatus', JSON.stringify(state.userStatus));
  46. // #endif
  47. // #ifndef H5
  48. uni.setStorageSync('userStatus', state.userStatus);
  49. // #endif
  50. }
  51. },
  52. // 保存token
  53. setToken(state, data) {
  54. if (data) {
  55. state.token = data;
  56. // #ifdef H5
  57. window.sessionStorage.setItem('token', JSON.stringify(state.token));
  58. // #endif
  59. // #ifndef H5
  60. uni.setStorageSync('token', state.token);
  61. // #endif
  62. }
  63. },
  64. // 保存头像
  65. setAvatar(state, data) {
  66. if (data) {
  67. state.avatar = data;
  68. // #ifdef H5
  69. window.sessionStorage.setItem('avatar', JSON.stringify(state.token));
  70. // #endif
  71. // #ifndef H5
  72. uni.setStorageSync('avatar', state.token);
  73. // #endif
  74. }
  75. },
  76. //储存用户信息
  77. setUserInfo(state, data) {
  78. if (data) {
  79. state.userInfo = data;
  80. state.userLoginId = data.sysUser.id;
  81. // #ifdef H5
  82. window.sessionStorage.setItem('userInfo', JSON.stringify(state.userInfo));
  83. window.sessionStorage.setItem('userLoginId', JSON.stringify(state.userLoginId));
  84. // #endif
  85. // #ifndef H5
  86. uni.setStorageSync('userInfo', state.userInfo);
  87. uni.setStorageSync('userLoginId', state.userInfo.sysUser.id);
  88. // #endif
  89. }
  90. },
  91. //储存用户临时信息
  92. setUserCheckInfo(state, data) {
  93. if (data) {
  94. state.userCheckInfo = data;
  95. // #ifdef H5
  96. window.sessionStorage.setItem('userCheckInfo', JSON.stringify(state.userCheckInfo));
  97. // #endif
  98. // #ifndef H5
  99. uni.setStorageSync('userCheckInfo', state.userCheckInfo);
  100. // #endif
  101. }
  102. },
  103. // 退出APP
  104. emptyUserInfo(state) {
  105. state.userInfo = {};
  106. state.userCheckInfo = {};
  107. state.avatar = '';
  108. state.token = '';
  109. state.userStatus = '1';
  110. // #ifdef H5
  111. window.sessionStorage.removeItem("userInfo");
  112. window.sessionStorage.removeItem("userCheckInfo");
  113. window.sessionStorage.removeItem("avatar");
  114. window.sessionStorage.removeItem("token");
  115. window.sessionStorage.removeItem("userStatus");
  116. // #endif
  117. // #ifndef H5
  118. uni.removeStorageSync("userInfo");
  119. uni.removeStorageSync("userCheckInfo");
  120. uni.removeStorageSync("avatar");
  121. uni.removeStorageSync("token");
  122. uni.removeStorageSync("userStatus");
  123. // #endif
  124. },
  125. };
  126. export const actions = {
  127. };