import Vue from 'vue' import { Toast } from 'vant'; import { services as Services } from '../../../api/index' Vue.use(Toast); const state = { classList: [], goodList: [], loading: false, finished: false, goodCount: 0 } const mutations = { classListM(state, payload) { state.classList = payload.data }, goodList(state, payload) { let arr = []; for (let k in payload.data) { arr.push(payload.data[k]) } state.goodList = state.goodList.concat(arr) } } const actions = { getClasslist({ commit, }) { Services.sampleClassList().then((res) => { let data = res.data; if (data.err_code == 0) { commit("classListM", { data: data.data || [], }); } else { commit("classListM", { data: [], }) } }).catch(function (err) { commit("classListM", { data: [], }) }); }, getGoodList({ commit }, payload) { state.loading = true; state.finished = false; let p = payload.data.p; if (p == 1) { state.goodList = []; } let params = { ...payload.data, limit: 10, } Services.sampleList(params).then((res) => { state.loading = false; let data = res.data; if (data.err_code == 0) { let totalPage = 0; if (data.data.total) { totalPage = Math.ceil(data.data.total / 10); } if (p == totalPage || !totalPage) { state.finished = true; } if (data.data.total) { commit('goodList', { data: data.data.data }) } } else { state.loading = false; state.finished = true; } }).catch(function (err) { state.loading = false; state.finished = true; }); } } export default { state, actions, mutations }