index.js 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. // store.js
  2. import Vue from 'vue';
  3. import Vuex from 'vuex';
  4. import user from './modules/user';
  5. import notifyService from "@/api/notify/notifyService";
  6. import userService from "@/api/sys/userService";
  7. Vue.use(Vuex);
  8. // store.js
  9. export default new Vuex.Store({
  10. modules: {
  11. user
  12. },
  13. state: {
  14. userInfo: null, // 新增:存储用户信息
  15. messageDataList: [],
  16. triggerShowOpen: false // 新增状态
  17. },
  18. mutations: {
  19. setMessageDataList(state, dataList) {
  20. state.messageDataList = dataList;
  21. },
  22. setTriggerShowOpen(state, value) {
  23. state.triggerShowOpen = value;
  24. },
  25. setUserInfo(state, userInfo) {
  26. state.userInfo = userInfo; // 新增:用于存储用户信息
  27. }
  28. },
  29. actions: {
  30. async loadmore({ commit }) {
  31. const data = await notifyService.getUnreadCountByIsSelf({
  32. isSelf: true
  33. });
  34. return data;
  35. },
  36. triggerShowOpen({ commit }) {
  37. commit('setTriggerShowOpen', true); // 触发状态改变
  38. },
  39. resetTriggerShowOpen({ commit }) {
  40. commit('setTriggerShowOpen', false); // 重置状态
  41. },
  42. async fetchUserInfo({ commit }) {
  43. try {
  44. const userInfo = await userService.info(); // 调用你的 API 获取用户信息
  45. commit('setUserInfo', userInfo); // 提交 mutation 保存用户信息
  46. } catch (error) {
  47. console.error('获取用户信息失败:', error);
  48. }
  49. }
  50. },
  51. });