Как мне сбросить свое состояние при выходе из системы с несколькими редукторами - PullRequest
0 голосов
/ 02 июля 2019

Как я могу сбросить свое состояние, если у меня есть несколько редукторов? Я видел различные примеры, Как сбросить состояние магазина Redux? . следующее.

const appReducer = combineReducers({
  /* your app’s top-level reducers */
})

const rootReducer = (state, action) => {
  if (action.type === 'USER_LOGOUT') {
    state = undefined
  }

  return appReducer(state, action)
}

Я не понимаю, как поступить. Как я могу сбросить состояние с помощью следующего, когда у меня есть

Мой rootReducer выглядит так:

export interface IState {
  userReducer: IUserState;
  sessionReducer: ISessionState;
  authenticateReducer: IAuthenticateState;
  articlesReducer: IArticlesState;
}

export const reducers = combineReducers<IState>({
  userReducer,
  sessionReducer,
  authenticateReducer,
  articlesReducer  
});

Просто, чтобы дать вам пример состояний (я предоставляю IUserState) только потому, что другие имеют ту же архитектуру при инициализации.

export interface IUserState {
  user: IUserEntity;
  alert?: IAlertEntity;
  errors: IErrorsEntity;
}
export const initialState: IUserState = {
  errors: EmptyErrors(),
  alert: EmptyMessage(),
  user: EmptyUser()
};

Как я могу сбросить мои состояния и какое было бы лучшее решение?

1 Ответ

0 голосов
/ 04 июля 2019

Я использую location.reload () при выходе из системы. Нажмите

.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...