강의

멘토링

로드맵

Inflearn brand logo image

인프런 커뮤니티 질문&답변

장산님의 프로필 이미지
장산

작성한 질문수

[리뉴얼] React로 NodeBird SNS 만들기

서버사이드렌더링 준비하기

서버사이드렌더링 준비하기 강의 질문

작성

·

681

0

강의에 올라와 있는 pages폴더에서 index.js 파일

getServerSideProps부분이 저도 store.dispatch오류가 나서 고차함수로 바꾸어 주니까 해결됬습니다. 근데 이유를 잘모르겠습니다 ㅠㅠ

export const getServerSideProps = wrapper.getServerSideProps(
  (store) => async () => {
    store.dispatch({
      type: LOAD_MY_INFO_REQUEST,
    });
    store.dispatch({
      type: LOAD_POSTS_REQUEST,
    });
    store.dispatch(END);
    await store.sagaTask.toPromise();
  }
);

 

답변 1

0

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

무엇을 어떻게 바꾸셨다는 건가요? next-redux-wrapper 버전 차이일 수 있습니다.

장산님의 프로필 이미지
장산
질문자

export const getServerSideProps = wrapper.getServerSideProps(async (context) => {
  const cookie = context.req ? context.req.headers.cookie : '';
  axios.defaults.headers.Cookie = '';
  if (context.req && cookie) {
    axios.defaults.headers.Cookie = cookie;
  }
  context.store.dispatch({
    type: LOAD_MY_INFO_REQUEST,
  });
  context.store.dispatch({
    type: LOAD_POSTS_REQUEST,
  });
  context.store.dispatch(END);
  await context.store.sagaTask.toPromise();
});

위에 코드가 dispatch오류가 나고

export const getServerSideProps = wrapper.getServerSideProps(
  (store) => async () => {
    store.dispatch({
      type: LOAD_MY_INFO_REQUEST,
    });
    store.dispatch({
      type: LOAD_POSTS_REQUEST,
    });
    store.dispatch(END);
    await store.sagaTask.toPromise();
  }
);

이런식으로 수정을 해주었더니 해결이 되었는데 오류가 난 원인이 무엇인지 잘모르겠습니다

next-redux-wrapper은 ^8.1.0입니다

 

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

네 이 강좌랑 버전 차이입니다.

장산님의 프로필 이미지
장산

작성한 질문수

질문하기