• 카테고리

    질문 & 답변
  • 세부 분야

    풀스택

  • 해결 여부

    해결됨

SSR을 적용하지 않을 리듀서는 어떻게 해야 할까요?

20.11.13 00:52 작성 조회수 107

0

SSR 공부 중에 질문 드립니다!

SSR을 적용하면 페이지를 이동할 때마다 NEXT_REDUX_WRAPPER_HYDRATE 액션을 실행하여 새로운 state로 매번 갱신되지 않습니까?!

위 코드에서 combineReducers로 합친 리듀서 중,

preference 리듀서는 DB에 저장하지 않을 state를 가지고 있는 리듀서입니다. (예를 들어 다크모드 on/off 등..)

얘만은 SSR의 영향을 받지 않게 하고 싶을 때는 어떻게 해야 할까요?

combineReducers로 합친 리듀서와

또 다시 합쳐야 할지..ㅠㅠ 머리가 안돌아갑니다

답변 1

답변을 작성해보세요.

1

SSR 영향을 안 받게 할 수는 없습니다. 그러려면 애초에 next를 쓰면 안 됩니다. 한 가지 우회법은 preference에만 redux-persist같은 것을 적용하는 것입니다. preference의 데이터는 localStorage에서 읽어서 불러오게 만들면 처음에 SSR 시에는 비어있지만 웹페이지가 로딩되자마자 로컬스토리지에서 데이터를 불러와 적용할 수 있습니다.