개발자

nextjs 13 getStaticProps 질문

2023년 01월 28일조회 745

안녕하세요. nextjs 13에서 변경된 app 디렉토리에서는 getStaticProps를 지원하지 않고 fetch의 cache로 getStaticProps 등의 동작을 수행할 수 있게 된 부분에 있어서 의문점이 생겨서 질문 남깁니다. 1. 서버 컴포넌트니까 console등은 서버에서 찍히는 것을 확인하였습니다. 이것은 서버 컴포넌트는 항상 ssr로 동작한다는 의미인것인가요? 2. fetch를 사용하지 않고서는 static, ssr, isr 을 구분시킬 수 없는 건가요? 3. 이전 버전(12)에서는 getStaticProps를 사용해서 fs, gray-matter 같은 static하게 서버에서 생성 해놓기를 원했던 경우에 사용하기도 하였는데 이런 부분은 구현할 수가 없는 건가요? (코드 첨부)

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.
profile picture
익명님의 질문

답변 1

손정현님의 프로필 사진

안녕하세요. next.js 베타 문서를 빠르게 훑어보고 와서 답변드립니다. 1. 서버 컴포넌트니까 console등은 서버에서 찍히는 것을 확인하였습니다. 이것은 서버 컴포넌트는 항상 ssr로 동작한다는 의미인것인가요? 네, 서버 컴포넌트는 항상 서버에서 렌더해서 내려줍니다. app 디렉토리라면 서버 컴포넌트가 디폴트로 사용된다고 합니다. - https://beta.nextjs.org/docs/rendering/server-and-client-components#server-components 2. fetch를 사용하지 않고서는 static, ssr, isr 을 구분시킬 수 없는 건가요? 음, 확실하지는 않지만 기존 getStaticProps, getServersideProps 등을 버리고 fetch와 cache 메커니즘을 사용하도록 유도하는 것 같긴합니다. - https://beta.nextjs.org/docs/data-fetching/fetching#static-data-fetching 위 문서 하단으로 내려보시면 "Data fetching without fetch()" 단락을 참고해보시면 될 것 같습니다. 3. 이전 버전(12)에서는 getStaticProps를 사용해서 fs, gray-matter 같은 static하게 서버에서 생성 해놓기를 원했던 경우에 사용하기도 하였는데 이런 부분은 구현할 수가 없는 건가요? 첨부해주신 코드는 서버 파일 시스템에서 데이터 처리 로직을 돌리는 것 같은데, 동일하게 사용 가능할 것 같습니다. getStaticProps에 있는 로직을 컴포넌트 안에서 바로 사용 가능해보여요.

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

목록으로
키워드로 질문 모아보기

실무, 커리어 고민이 있다면

새로운 질문 올리기

지금 가입하면 모든 질문의 답변을 볼 수 있어요!