작성
·
14
0
안녕하세요! 좋은 강의로 Next.js를 배울 수 있게 해주셔서 감사드립니다.
Full Route Cache 관련해서 궁금한 점이 있습니다.
레이아웃 파일에서 cookies()나 headers() 같은 동적 함수를 사용하는 경우, 그 아래에 있는 페이지들도 영향을 받는지 궁금합니다..!
예를 들어서 블로그 레이아웃에서 사용자 테마를 쿠키로 가져오고 있고, 블로그 포스트 페이지 자체는 force-cache로 정적 데이터만 사용한다면, 이
경우 페이지가 Static으로 빌드될 수 있을까요?
아니면 상위 레이아웃이 Dynamic이면 하위 페이지도 함께 Dynamic으로 처리되는 건지 궁금합니다!
감사합니다.
답변 1
0
안녕하세요 이정환입니다.
따뜻한 칭찬 진심으로 감사합니다 🙇♂
네 layout.tsx 파일에서 동적 함수를 사용하는 경우 하위의 페이지들 모두 영향을 받습니다.
강의에서 말씀드렸듯 특정 페이지가 다이나믹 페이지로 설정되는 조건은 "한 페이지를 이루는 모든 컴포넌트 중 하나라도 동적 함수 or 캐시되지 않는 데이터 페칭을 가지고 있을 경우" 입니다.
layout 컴포넌트 역시 페이지를 이루는 컴포넌트이기에, 동적 함수를 사용할 경우 해당 레이아웃을 갖는 모든 페이지가 다이나믹 페이지로 설정됩니다.
이 부분은 샘플 프로젝트를 만들어 직접 실험해보시면 더 좋을 것 같습니다 😀