У меня возникли некоторые проблемы с состоянием приложения Redux.Допустим, пара действий обновит состояние.Когда запускается эффект NgRX, то внезапно состояние исчезает, и следующее действие, которое идет к редуктору, принимает initialState.
Вот мой эффект:
@Effect() getConfiguration$ = this.actions$.pipe(
ofType(PlasmaAction.PlasmaActionTypes.GET_CONFIGURATION),
switchMap((action: PlasmaAction.PlasmaActions) => {
return this.plasmaService.send(action.payload).pipe(
map(result => {
return new PlasmaAction.SetConfiguration(result);
})
);
})
);
Вплоть до отправки действия GET_CONFIGURATIONсостояние в порядке, но тогда состояние выглядит следующим образом: redux-dev-tools-screenshot и состояние пустое.Я что-то упустил?
PS Отправляется SET_CONFIGURATION и обновляет состояние с новой конфигурацией, а все остальные атрибуты возвращаются к исходным.
@ EDIT: Вот мой редуктор.Немного отладки с моей стороны:
export function plasmaReducer(state: PlasmaState, action: PlasmaActions) {
if (!state) {
console.log('%c STATE IS EMPTY', 'color:red;');
state = initialState;
}
switch (action.type) {
case PlasmaActionTypes.CONNECTION_OPENED: {
return { ...state, connected: true };
}
case PlasmaActionTypes.CONNECTION_CLOSED: {
return { ...state, connected: false };
}
case PlasmaActionTypes.SET_CONFIGURATION: {
return { ...state, configuration: action.payload };
}
}
}