0

詳細:

内部に呼び出されるコンポーネントがありheader、モバイル デバイスではバーガー メニューがあります。

このハンバーガー メニューをクリックすると、状態にtrueなり、メニューが開き、十字をクリックすると、状態になりfalse、メニューが閉じます。

今問題:

コンポーネントを変更すると、常に以前の状態が保存されます。homeたとえば、メニューが開いていてクリックすると、実際の状態とtrue自宅でメニューが開いているため、このような状態は望ましくありません。

何かアドバイスはありますか?

コードを見てください:

// ACTION : 

export const setBurgerMenu = createAction(
  SET_BURGER_MENU,
  () => ({})
);

export const getBurgerMenu = () => {
  return dispatch => {
    dispatch(setBurgerMenu());
  };
};

// REDUCER : 
// Initial state contain isOpenMenu at false
const reducer = handleActions({
  [SET_BURGER_MENU]: (state) => {
    return {
      ...state,
      isOpenMenu: !state.isOpenMenu
    };
  },
  [BREADCRUMBS_WILL_UPDATE]: (state) => {
    return {
      ...state,
      isWillUpdate: true
    };
  },
  [BREADCRUMBS_UPDATED]: (state) => {
    return {
      ...state,
      isWillUpdate: false
    };
  },
  [CLEAR_USER_DATA]: () => {
    return {
      ...initialState
    };
  }
}, initialState);

4

1 に答える 1