userStore.js 1006 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. import http from '../api/httpRequest.js'
  2. import {RTC_STATE} from "../api/enums.js"
  3. export default {
  4. state: {
  5. userInfo: {
  6. },
  7. rtcInfo: {
  8. friend: {}, // 好友信息
  9. mode: "video", // 模式 video:视频 voice:语音
  10. state: RTC_STATE.FREE // FREE:空闲 WAIT_CALL:呼叫方等待 WAIT_ACCEPT: 被呼叫方等待接听 CHATING:聊天中
  11. }
  12. },
  13. mutations: {
  14. setUserInfo(state, userInfo) {
  15. state.userInfo = userInfo
  16. },
  17. setRtcInfo(state, rtcInfo ){
  18. state.rtcInfo = rtcInfo;
  19. },
  20. setRtcState(state,rtcState){
  21. state.rtcInfo.state = rtcState;
  22. },
  23. clear(state){
  24. state.userInfo = {};
  25. state.rtcInfo = {
  26. friend: {},
  27. mode: "video",
  28. state: RTC_STATE.FREE
  29. };
  30. }
  31. },
  32. actions:{
  33. loadUser(context){
  34. return new Promise((resolve, reject) => {
  35. http({
  36. url: '/user/self',
  37. method: 'GET'
  38. }).then((userInfo) => {
  39. context.commit("setUserInfo",userInfo);
  40. resolve();
  41. }).catch((res)=>{
  42. reject(res);
  43. });
  44. })
  45. }
  46. }
  47. }