페이지 컴포넌트는 라우트의 URL, 데이터, 상태 경계를 한곳에서 묶는다
page.tsx를 작성할 때는 UI 함수만 보지 말고 라우터가 어떤 값을 넘기고 어떤 상태 파일이 주변을 받치는지 함께 확인한다.
| 역할 | 구체적 의미 | 코드 신호 | 점검 질문 |
|---|---|---|---|
| URL의 끝점 | 해당 경로에 접근했을 때 렌더링되는 최종 UI | app/welcome/page.tsx | 이 파일의 실제 URL은 무엇인가 |
| layout의 자식 | 상위 layout.tsx의 children 위치에 들어감 | children prop 없음 | 공통 UI를 page에 넣고 있지 않은가 |
| 서버 컴포넌트 | DB, 파일, 서버 API를 직접 사용할 수 있음 | use client 없음 | 이 로직을 브라우저로 보낼 필요가 있는가 |
| 비동기 렌더 | fetch 결과를 기다린 뒤 HTML 생성 | export default async function | 로딩/오류 파일이 준비되어 있는가 |
| 동적 라우트 | URL 조각을 params로 받아 조회 | [id]/page.tsx | params를 await하고 검증하는가 |