import { Toast } from 'antd-mobile'; import { getFciGroup, getFciDogAll } from '../services/index'; const COMMON_STATE = { list: [], breedList: [], resultList: [], value: '', }; export default { state: COMMON_STATE, reducers: { clearState(state, { payload }) { return { ...COMMON_STATE }; }, updateState(state, { payload }) { return { ...state, ...payload }; }, getResultList(state, { payload }) { const { breedList } = state; const { value } = payload; let resultList = []; breedList.forEach((item, i) => { if (item.chinese_breed_name && item.chinese_breed_name.indexOf(value) >= 0) { resultList.push({ ...item, }); } }); return { ...state, ...payload, resultList }; }, }, effects: { *getFciGroup({ payload }, { call, put }) { const data = yield call(getFciGroup, { ...payload }); if (data.rc === 0) { yield put({ type: 'updateState', payload: { list: data['0'], }, }); } else { Toast.fail(data.msg, 2); } }, *getFciDogAll({ payload }, { call, put }) { const data = yield call(getFciDogAll, { ...payload }); if (data.rc === 0) { yield put({ type: 'updateState', payload: { breedList: data['0'], resultList: data['0'], }, }); } else { Toast.fail(data.msg, 2); } }, }, subscriptions: { // setupHistory({ dispatch, history }) { // history.listen(location => {}); // }, }, };