import pagination from '@/store/modules/pagination'; const GET_LIST = 'GET_LIST'; const state = () => ({ list: [], }); const getters = { listData: state => state.list, }; const actions = { fetchAboutList({ state, commit, dispatch }, entity) { return new Promise(resolve => { const list = [ { id: 1, name: '123' }, { id: 2, name: '223' }, { id: 3, name: '323' }, ]; const pagination = { pageNum: state.pagination.pageNum, pageSize: state.pagination.pageSize, ...entity, total: 500, }; dispatch('updatePagination', pagination); commit(GET_LIST, list); resolve(); }); return fetchAboutList({ data: { pageNum: state.pagination.pageNum, pageSize: state.pagination.pageSize, ...entity, }, }).then(res => { const { list, ...pagination } = res.data; dispatch('updatePagination', pagination); commit(GET_LIST, list); }); }, }; const mutations = { [GET_LIST]: (state, list) => { state.list = list; }, }; export default { namespaced: true, modules: { pagination, }, state, getters, actions, mutations, };