index.js 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. import Vue from "vue"
  2. import Vuex from "vuex"
  3. import {
  4. assign,
  5. slice,
  6. isEmpty
  7. } from 'lodash-es'
  8. import task from './modules/task.js'
  9. Vue.use(Vuex)
  10. const store = new Vuex.Store({
  11. state: {
  12. list: {}, // 列表以及聊天内容数据
  13. video: null, // 视频通话数据
  14. wornlist: {},
  15. addobj: [],
  16. kpsurlL: 0,
  17. worndatabase: [],
  18. selfRoomInfo: null,
  19. pendingVideoConnect: false,
  20. isVideoTalking: false,
  21. isVideoCallRefused: false,
  22. userInfo: {},
  23. isInLoginPage:false,
  24. currentReceiveUserID:'',// 当前接收到的视频用户ID
  25. occupyedStatus:false, // 占线挂断
  26. },
  27. mutations: {
  28. updateVideoInfo(state, payload) {
  29. state.video = assign({}, payload)
  30. state.pendingVideoConnect = !isEmpty(payload)
  31. },
  32. updateVideoSelfRoomInfo(state, payload) {
  33. state.selfRoomInfo = assign({}, payload)
  34. },
  35. updateMessageList(state, payload) {
  36. state.list = slice(payload)
  37. },
  38. updatePendingVideoConnectStatus(state, flag) {
  39. state.pendingVideoConnect = flag
  40. },
  41. updateTalkingStatus(state, flag) {
  42. state.isVideoTalking = flag
  43. },
  44. updateIsRefusedCall(state, flag) {
  45. state.isVideoCallRefused = flag
  46. },
  47. updateUserInfo(state,payload){
  48. console.log(payload,'update user info')
  49. state.userInfo = payload
  50. },
  51. updateInLoginPageStatus(state,flag){
  52. state.isInLoginPage = flag;
  53. },
  54. updateCurrentReceiveUserID(state,id){
  55. state.currentReceiveUserID = id
  56. },
  57. updateOccupyedStatus(state,occupyedStatus){
  58. state.occupyedStatus = occupyedStatus
  59. }
  60. },
  61. actions: {},
  62. getters: {
  63. list: () => {
  64. },
  65. userUID(state) {
  66. console.log(state.userInfo,'store user uid')
  67. return state.userInfo.myuid || ''
  68. }
  69. },
  70. modules: {
  71. task
  72. }
  73. })
  74. export default store