news.js 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. import api from '../api';
  2. export default{
  3. state: {
  4. recommend: [], // 推荐
  5. lists: [], // 列表
  6. detail: {} // 详情
  7. },
  8. mutations: {
  9. // 注意,这里可以设置 state 属性,但是不能异步调用,异步操作写到 actions 中
  10. SETRECOMMEND(state, lists) {
  11. state.recommend = lists;
  12. },
  13. SETLISTS(state, lists) {
  14. state.lists = lists;
  15. },
  16. SETDETAIL(state, detail) {
  17. state.detail = detail;
  18. }
  19. },
  20. actions: {
  21. getNewsDetail({commit}, id) {
  22. // 获取详情,并调用 mutations 设置 detail
  23. api.getNewsDetail(id).then(function(res) {
  24. commit('SETDETAIL', res.data);
  25. document.body.scrollTop = 0;
  26. });
  27. },
  28. getNewsRecommend({commit}) {
  29. api.getNewsRecommend().then(function(res) {
  30. commit('SETRECOMMEND', res.data);
  31. });
  32. },
  33. getNewsLists({commit}) {
  34. api.getNewsLists().then(function(res) {
  35. commit('SETLISTS', res.data);
  36. });
  37. }
  38. }
  39. }