import Vue from 'vue' import { services as Services } from '../../../api/index' var qs = require('qs'); import Util from '../../../util/index' const state = { zyFilter: false, zyClass: false, zyRank: false, classData: [], classLight: {}, zyFilterData: {}, //过滤数据 zyData: [], loading: false, finished: false, count: 0 } const mutations = { xianhuo(state, payload) { if (payload.type == "filter") { state.zyFilter = payload.bool; state.zyFilterData = payload.data; } else if (payload.type == "rank") { state.zyRank = payload.bool } else if (payload.type == "class") { state.zyClass = payload.bool; state.classData = payload.data; } else if (payload.type == "class_light") { state.classLight = payload.data; } else if (payload.type == "zydata") { state.zyData = state.zyData.concat(payload.data) } } } const actions = { getZyData({ commit }, payload) { state.loading = true; state.finished = false; let p = payload.data.p; if(p == 1){ state.zyData = []; } let params= Util.getParams({ ...payload.data }) Services.getZyData(params).then((res) => { state.loading = false; let data = res.data; if (data.error_code == 0) { if(!data.data.data){ state.finished = true; return; } let totalPage = Math.ceil(data.data.total / 10); if (p == totalPage) { state.finished = true; } if (data.data.aggs) { commit("xianhuo", { //过滤数据 type: "filter", bool: true, data: data.data.aggs, }) } if (data.data.class) { //分类数据 commit("xianhuo", { type: "class", bool: true, data: data.data.class, }) } if (data.data.class_light) { //分类选中数据 commit("xianhuo", { type: "class_light", data: data.data.class_light, }) } if (data.data.total !== 0) { //数据总数 commit("xianhuo", { type: "rank", bool: true, data: data.data.aggs }) } if (data.data.data.data_list) { commit('xianhuo', { type: 'zydata', data: data.data.data.data_list }) } } else { state.loading = false; state.finished = true; } }).catch(function (err) { state.loading = false; state.finished = true; }); } } export default { state, actions, mutations }