index.js 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. import Vue from 'vue'
  2. import Vuex from 'vuex'
  3. import api from '@/common/api.js'
  4. Vue.use(Vuex);
  5. const store = new Vuex.Store({
  6. state: {
  7. login: true,
  8. token: '',
  9. avatarUrl: '',
  10. userName: '',
  11. userInfo:null,
  12. dictObj:null,
  13. allowLoading:true,
  14. goodsAuditionConfigIdList:[] //当前访问页面的试听节ID
  15. },
  16. getters: {
  17. userInfo: state => {
  18. if(state.userInfo==null){
  19. if(uni.getStorageSync('user_account')){
  20. getUserInfo(state)
  21. }
  22. }
  23. return state.userInfo
  24. },
  25. dictObj:state => {
  26. return state.dictObj
  27. },
  28. allowLoading:state => {
  29. return state.allowLoading
  30. },
  31. goodsAuditionConfigIdList:state => {
  32. return state.goodsAuditionConfigIdList
  33. }
  34. },
  35. mutations: {
  36. updateUserInfo(state, provider) {
  37. state.userInfo = provider.userInfo;
  38. },
  39. setGoodsAuditionConfigIdList(state, provider){
  40. state.goodsAuditionConfigIdList = provider.goodsAuditionConfigIdList;
  41. },
  42. }
  43. })
  44. async function getUserInfo(state){
  45. const resdata = await api.getInfo()
  46. if(resdata.data.code == 200){
  47. state.userInfo = resdata.data.data;
  48. }
  49. }
  50. export default store