Next.js

레이아웃 컴포넌트 사용하기

Next.js App Router에서 레이아웃(Layouts)은 여러 페이지가 공유하는 UI와 상태 유지 범위를 라우트 세그먼트 단위로 정의하는 파일입니다. 공통 내비게이션과 셸을 한 곳에 두어 화면 전환 중에도 구조가 유지됩니다.

공유 UI, 중첩 레이아웃, 상태 유지 범위를 기준으로 레이아웃 컴포넌트 구성 방식을 정리합니다.

레이아웃 컴포넌트 적용 흐름

1

레이아웃 개념

레이아웃은 특정 라우트 세그먼트와 그 하위 라우트에서 공유되는 UI를 래핑하는(감싸는) React 컴포넌트입니다.

2

최상위 레이아웃 (RootLayout) 이해하기

Next.js 프로젝트를 생성하면 src/app/layout.tsx 파일이 자동으로 생성됩니다.

3

중첩 레이아웃 (Nested Layouts) 사용하기

특정 라우트 세그먼트에만 적용되는 별도의 레이아웃을 정의할 수도 있습니다.

4

레이아웃의 데이터 페칭

레이아웃은 기본적으로 서버 컴포넌트이므로, 서버에서 데이터를 미리 가져와 UI를 구성합니다.