У меня проблема с действием Redux, возвращающим ошибку «Невозможно преобразовать неопределенное или нулевое значение в объект Error».
Когда я использовал отладчик и точки останова для устранения этой проблемы, я обнаружил, что он попадает в «раздел успеха» в редукторе и получает данные, которые мне нужны. Однако сразу после этого он переходит в раздел «Ошибка» в редукторе и просто перезаписывает нужные мне данные с ошибкой.
Почему это происходит? Может ли кто-нибудь помочь мне с этим вопросом?
Вот мой код действия:
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;