index.js 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160
  1. import Vue from 'vue';
  2. import Vuex from 'vuex';
  3. import fa from "element-ui/src/locale/lang/fa";
  4. Vue.use(Vuex);
  5. /**
  6. * 设置全局访问的state对象
  7. store
  8. */
  9. const state = {
  10. user_info: '', //用户信息
  11. sessionList: [],//会话列表
  12. offlineList: [],//离线列表
  13. current_session:[],//当前会话详情信息
  14. sessionType: 1,//选择列表状态默认未1(1是会话中,2是离线)
  15. data_num: 0,//定位当前会话,默认是0
  16. navState: 'TheCurrentSession',//导航状态
  17. session_name: '',//当前会话用户名
  18. session_message:'',//接收会话信息
  19. stateValue: '',//状态值
  20. is_init: false,//初始化,
  21. new_drawer: false, //显示消息中心
  22. session_user_info:{},//当前会话用户信息
  23. }
  24. /**
  25. * 实时监听state里面值的变法(最新变法)
  26. */
  27. const getters = {
  28. get_user_info(state) {
  29. return state.user_info;
  30. },
  31. get_session(state) {
  32. return state.sessionList;
  33. },
  34. get_offline(state) {
  35. return state.offlineList;
  36. },
  37. get_current(state) {
  38. return state.current_session;
  39. },
  40. get_type(state) {
  41. return state.sessionType;
  42. },
  43. get_num(state) {
  44. return state.data_num;
  45. },
  46. get_navState(state) {
  47. return state.navState;
  48. },
  49. get_session_name(state) {
  50. return state.session_name;
  51. },
  52. get_session_message(state) {
  53. return state.session_message;
  54. },
  55. get_stateValue(state) {
  56. return state.stateValue;
  57. },
  58. get_is_init(state) {
  59. return state.is_init;
  60. },
  61. get_drawer(state) {
  62. return state.new_drawer;
  63. },
  64. get_session_user(state){
  65. return state.session_user_info;
  66. }
  67. }
  68. /**
  69. * 设置对外可调用的方法
  70. */
  71. const mutations = {
  72. new_user_info(state, val) {
  73. state.user_info = val;
  74. //console.log(val);
  75. },
  76. new_session(state, val) {
  77. state.sessionList = val;
  78. },
  79. new_offline(state, val) {
  80. state.offlineList = val;
  81. },
  82. new_current(state, val) {
  83. state.current_session = val;
  84. },
  85. new_type(state, val) {
  86. state.sessionType = val;
  87. },
  88. new_num(state, val) {
  89. state.data_num = val;
  90. },
  91. new_navState(state, val) {
  92. state.navState = val;
  93. },
  94. new_session_name(state, val) {
  95. state.session_name = val;
  96. },
  97. new_session_message(state, val) {
  98. state.session_message = val;
  99. },
  100. new_stateValue(state, val) {
  101. state.stateValue = val;
  102. },
  103. new_is_init(state, val) {
  104. state.is_init = val;
  105. },
  106. new_drawer(state, val) {
  107. state.new_drawer = val;
  108. },
  109. }
  110. /**
  111. * 这里面的方法是用来异步触发mutations里面的方法
  112. */
  113. const actions = {
  114. SET_USER(context, val) {
  115. context.commit('new_user_info', val);
  116. },
  117. SET_SESSION(context, val) {
  118. context.commit('new_session', val);
  119. },
  120. SET_OFFLINE(context, val) {
  121. context.commit('new_offline', val);
  122. },
  123. SET_CURRENT(context, val) {
  124. context.commit('new_current', val);
  125. },
  126. SET_TYPE(context, val) {
  127. context.commit('new_type', val);
  128. },
  129. SET_NUM(context, val) {
  130. context.commit('new_num', val);
  131. },
  132. SET_NAVSTATE(context, val) {
  133. context.commit('new_navState', val);
  134. },
  135. SET_SESSION_NAME(context, val) {
  136. context.commit('new_session_name', val);
  137. },
  138. SET_SESSION_MESSAGE(context, val) {
  139. context.commit('new_session_message', val);
  140. },
  141. SET_STATEVALUE(context, val) {
  142. context.commit('new_stateValue', val);
  143. },
  144. SET_IS_INIT(context, val) {
  145. context.commit('new_is_init', val);
  146. },
  147. SET_DRAWER(context, val) {
  148. context.commit('new_drawer', val);
  149. }
  150. }
  151. const store = new Vuex.Store({
  152. state,
  153. getters,
  154. mutations,
  155. actions
  156. });
  157. export default store;