Каков наилучший способ сбросить все состояние, когда у нас есть разные редукторы?У меня проблемы с этим, когда я использую селекторы, так как он не возвращает мне начальное состояние, когда я делаю сброс
MetaReducer
import { ActionReducer } from '@ngrx/store';
import { UserActionTypes } from '../../actions/actionTypes';
export function clearStateReducer(reducer: ActionReducer<any>): ActionReducer<any> {
return (state, action) => {
if (action.type === UserActionTypes.Logout) {
state = undefined;
}
return reducer(state, action);
};
}
Модуль состояния
import { NgModule } from '@angular/core';
import { StateService } from './state.service';
import { StoreDevtoolsModule } from '@ngrx/store-devtools';
import { StoreModule } from '@ngrx/store';
import { appReducer } from './reducers';
import { getInitialState } from './state';
import { metaReducers } from './reducers/metaReducers';
@NgModule({
imports: [
StoreModule.forRoot(appReducer, {
initialState: getInitialState(),
metaReducers,
runtimeChecks: {
strictStateImmutability: false,
strictActionImmutability: false,
strictStateSerializability: false,
strictActionSerializability: false
}
}),
StoreDevtoolsModule.instrument({
maxAge: 25
})
],
providers: [StateService]
})
export class StateServiceModule {}