index.js 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  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. shoppingCartList:[], //购物车支付商品
  16. applyData:{},//预约考试数据存放
  17. },
  18. getters: {
  19. userInfo: state => {
  20. if(state.userInfo==null){
  21. if(uni.getStorageSync('user_account')){
  22. getUserInfo(state)
  23. }
  24. }
  25. return state.userInfo
  26. },
  27. dictObj:state => {
  28. return state.dictObj
  29. },
  30. allowLoading:state => {
  31. return state.allowLoading
  32. },
  33. goodsAuditionConfigIdList:state => {
  34. return state.goodsAuditionConfigIdList
  35. },
  36. shoppingCartList:state => {
  37. return state.shoppingCartList
  38. },
  39. getApplyData:state => {
  40. return state.applyData
  41. }
  42. },
  43. mutations: {
  44. updateApplyData(state, arrays) {
  45. state.applyData = arrays;
  46. },
  47. updateUserInfo(state, provider) {
  48. state.userInfo = provider.userInfo;
  49. },
  50. setGoodsAuditionConfigIdList(state, provider){
  51. state.goodsAuditionConfigIdList = provider.goodsAuditionConfigIdList;
  52. },
  53. setShoppingCartList(state, provider){
  54. state.shoppingCartList = provider.shoppingCartList;
  55. },
  56. }
  57. })
  58. async function getUserInfo(state){
  59. const resdata = await api.getInfo()
  60. if(resdata.data.code == 200){
  61. state.userInfo = resdata.data.data;
  62. }
  63. }
  64. export default store