原因是reducers中的函数名称不能与effects中一致!!!
如下是会不停触发dataStatistics接口的请求的!
reducers: {
dataStatistics(state, action) {
return {
...state,
dataStatistics: action.payload
}
},
},
effects: {
* dataStatistics(action, { call, put }) {
const result = yield call(API.dataStatistics, action.payload)
// 预缓存主要数据
yield put({ type: 'dataStatistics', payload: result })
},
},
而这样子就不会
reducers: {
dataStatistics(state, action) {
return {
...state,
dataStatistics: action.payload
}
},
},
effects: {
* getDataStatistics(action, { call, put }) {
const result = yield call(API.dataStatistics, action.payload)
// 预缓存主要数据
yield put({ type: 'dataStatistics', payload: result })
},
},