// 下拉刷新,获取更多数据处理 export const initDataState = { page: 0, size: 20, finish: false, loading: false, refreshing: false, dataList: [], error: "", }; export function DataListReducer(state, action) { switch (action.type) { case "startRefresh": return { ...state, page: 0, finish: false, refreshing: true, dataList: [], }; case "refreshSuccess": return { ...state, refreshing: false, }; case "refreshError": return { ...state, error: action.payload.error, dataList: [], refreshing: false, }; case "startPageMore": return { ...state, loading: true, }; case "pageMoreSuccess": return { ...state, loading: false, }; case "pageMoreError": return { ...state, error: action.payload.error, loading: false, }; case "setInfo": console.log(action.payload.list); return { ...state, dataList: state.page === 0 ? [...action.payload.list] : state.dataList.concat([...action.payload.list]), finish: action.payload.finish, page: action.payload.finish ? state.page : state.page + 1, }; case "remove": { const list = [...state.dataList]; list.splice(action.payload.index, 1); // console.log(list); return { ...state, dataList: list, }; } case "clear": return { ...state, refreshing: true, dataList: [], }; default: return state; } }