Redux操作返回错误“无法将未定义或null转换为对象错误”时遇到问题。
当我使用调试器和断点调试此问题时,我发现它确实到达了reducer中的“成功部分”并获取了我需要的数据。但是,此后,它转到化简器中的“错误部分”,并且只是覆盖了我需要的数据,并且有错误。
为什么会这样?有人可以帮我解决这个问题吗?
这是我的操作代码:
import * as types from './initiativeTypes';
export const getInitiatives = (kiID) => {
debugger;
return (dispatch, getState) => {
dispatch({
type: 'API_REQUEST',
options: {
method: 'GET',
service: 'follow',
endpoint: `initiative/${kiID}/primerStub`,
actionTypes: {
success: types.GET_INITIATIVE_SUCCESS,
error: types.GET_INITIATIVE_ERROR
}
}
});
};
};
这是减速器的代码
import * as types from './initiativeTypes';
const initialState = {
initiativeInfo: {}
};
const initiativeReducer = (state = initialState, action) => {
debugger;
switch (action.type) {
case types.GET_INITIATIVE_LOADING:
return { ...initialState, loading: true };
case types.GET_INITIATIVE_SUCCESS:
return { ...state, loading: false, initiativeInfo: action.data || {}};
case types.GET_INITIATIVE_ERROR:
return {...state, error: action.data};
default: {
return state;
}
}
};
export default initiativeReducer;