index.js 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. import {login_types,state,mutations,actions,getters} from "./login";
  2. import indexTypes from "./indexStoreTypes";
  3. import login from "./login";
  4. import {apiMap} from "../map/apiMap";
  5. export const modules = {
  6. index: {
  7. state: {
  8. // 产品类别
  9. pTypes: [],
  10. // 新闻类别
  11. nTypes: [],
  12. },
  13. mutations: {
  14. [indexTypes.mutations.setProductTypes](state, pTypes) {
  15. state.pTypes = pTypes;
  16. },
  17. [indexTypes.mutations.setNewsTypes](state, nTypes) {
  18. state.nTypes = nTypes;
  19. }
  20. },
  21. actions : {
  22. async nuxtServerInit ({ commit }, { req }) {
  23. console.log('nuxtServerInit');
  24. if(req.session){
  25. if (req.session.owner) {
  26. commit('login/'+login_types.mutations.userLogin, req.session.owner)
  27. }
  28. // 获取新闻与产品类别信息
  29. let err, res;
  30. [err, res] = await this.$axios.$get(apiMap.baseTypes.path);
  31. if(err){return console.log(err);}
  32. if(res.code !== rCode.OK){return console.log(res.msg);}
  33. let result = res.data;
  34. commit(indexTypes.mutations.setProductTypes, result.pTypes);
  35. commit(indexTypes.mutations.setNewsTypes, result.pTypes);
  36. }
  37. },
  38. }
  39. },
  40. login
  41. }