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

밀크티님의 프로필 이미지

작성한 질문수

손에 익는 Next.js - 공식 문서 훑어보기

데이터 페칭(Data Fetching)

generateStaticParams에 대하여 질문 드립니다~!

해결된 질문

24.01.23 23:44 작성

·

637

2

안녕하세요 선생님

좋은 강의 정말 감사합니다.

 

다름이 아니라, 강의 중에선 generateStaticParams에 관하여 다루진 않는 것 같아서

혼자서 공부중인데 그럼에도 여전히 궁금하고 확실하게 이해되지 않는 몇가지가 있어서 질문드립니다~!

 


  1. 기존 Next12에서 SSG(정적페이지 Pre-Rendering)을 Next13에서는 generateStaticParams로 대체 된 것이 맞을까요? (동적라우팅페이지 포함)

  2. generateStaticParams 를 이용하여 증분정적생성(ISR) 형식으로 배포하려면 기존 fetch 옵션에 동일하게

    { next: { revalidate: 60 } }를 추가해주면 되는게 맞을까요?

  3. Next12에서는 데이터를 패칭한 정적페이지를 미리 생성해놓음으로서, 유저에게 빠른 속도로 페이지를 제공한다는 장점이 있다는 것을 공부했던 기억이 있습니다. 그런데, Next13 이후부터는 서버 '컴포넌트' 단위의 개발을 지향하는 듯 한데 generateStaticParams을 이용하여 개발하는 것이 어떤 의미인지 잘 이해가 되지 않습니다~! 단지 Next13에서 정적페이지 생성을 위한 함수를 남겨둔 것이라고만 이해하면 좀 쉬울까요?

  4. 서버 컴포넌트generateStaticParams로 build하는 페이지에선 사용할 수 없는 것일까요?

  5. 저는 아직 대규모 프로젝트를 진행해본 적이 없는 주니어 개발자입니다. 보통 현업에서 동적라우팅 SSG 페이지를 대량으로 생성하여 배포하는 경우가 많을까요? 보통 어떤 경우에 많이 사용하실까요?


 

 

바쁘실텐데 질문이 많아 정말 죄송합니다 ㅠㅠ!

날이 많이 추워졌는데 건강에 유의하셨으면 좋겠습니다.

감사합니다~!

답변 1

1

하조은님의 프로필 이미지
하조은
지식공유자

2024. 01. 25. 23:17

열심히 하고 계신 것 같아 보기 좋습니다! 질문 남겨주셨는데 답변이 늦었습니다.

 

우선 1, 2번 질문에 대해서는 공식 문서를 통해 답변을 드릴 수 있을 거 같습니다. Good to know 부분에 나와있는 내용입니다.

- During next build, generateStaticParams runs before the corresponding Layouts or Pages are generated.
- During revalidation (ISR), generateStaticParams will not be called again.

- generateStaticParams replaces the getStaticPaths function in the Pages Router.

generateStaticParamsnext build 때 실행됩니다. ISR 방식에선 generateStaticParams가 실행되지 않습니다. App Router의 generateStaticParams는 Pages Router의 getStaticPaths를 대체합니다.

 

generateStaticParams는 서버에서만 동작하는 함수입니다. 때문에 서버 컴포넌트와 함께 사용한다고 보시면 될 것 같습니다! 이해를 돕는 저장소와 자료를 남겨두겠습니다.

 

SSG로 페이지를 대량으로 생성하는 경우는 아주 빈번합니다. 컨텐츠가 동적으로 바뀌지 않아도 되는 웹사이트는 모두 정적으로 페이지를 생성하는 편이 성능면에서 유리하기 때문에 다양한 경우에 활용될 수 있습니다. 각 기업들의 공식 홈페이지, 기술 블로그는 대부분 SSG를 이용하는 게 유리하다고 보시면 됩니다.

 

유익한 질문 남겨주셔서 저도 공부가 많이 됐습니다! 정말 감사합니다.

질문하실 때 부담 갖지 말고 남겨주세요. 공부 화이팅입니다!