index.js 819 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. import Vue from 'vue';
  2. import Vuex from 'vuex';
  3. import {
  4. getUserInfo
  5. } from '../api';
  6. Vue.use(Vuex);
  7. const store = new Vuex.Store({
  8. state: {
  9. userInfo: uni.getStorageSync('userInfo'),
  10. userId: uni.getStorageSync('userId'),
  11. isLogin: uni.getStorageSync('isLogin'),
  12. websitData: uni.getStorageSync('websitData'),
  13. },
  14. mutations: {
  15. changeWebsitObj(state, value) {
  16. state.websitData = value;
  17. },
  18. changeIsLogin(state, bol) {
  19. state.isLogin = bol;
  20. },
  21. changeUserInfo(state, value) {
  22. state.userInfo = value;
  23. },
  24. changeUserId(state, value) {
  25. state.userId = value;
  26. },
  27. },
  28. actions: {
  29. resetUserInfo({
  30. commit
  31. }) {
  32. return getUserInfo().then((res) => {
  33. const {user} = res.data;
  34. commit('changeUserInfo', user);
  35. return Promise.resolve(user);
  36. })
  37. },
  38. }
  39. })
  40. export default store;