Next 공식 문서에 기재된 Routing 개념을 정리한다.
설명에 앞서 용어 정의부터 시작한다.
- Tree / SubTree
- Root / Leaf
- URL Path / Segment
Next 애플리케이션은 파일 구조, 컴포넌트 부모/자식 관계 등을 토대로 Routing Tree를 생성하고, 파싱된 URL에 따라 적절한 Page 를 반환한다.
위 사진처럼 Tree 는 전체를 의미하고, SubTree 는 부분을 의미한다.
<html>
과 <body>
태그를 포함하는 HTML 문서의 시작 부분을
RootLayout 파일에 정의하고, Router Tree에서는 이를 Root 라 부른다.
하나의 SubTree는 하나의 Root만 포함하고 있어야 한다.
자식 노드가 없는 가장 끝의 말단 노드를 Leaf 라 부른다.
도메인 다음에 오는 URL을 URL Path 라 하고,
/ 기호로 구분되는 각각의 부분을 Segment 라 부른다.
실질적인 구현 방법은 다음부터 다루게 된다.
Terminology
Defining Routes
Pages and Layouts
Linking and Navigating
Route Groups
Dynamic Routes
Loading UI and Streaming
Error Handling
Parallel Routes
Intercepting Routes
Route Handlers
Middleware
Project Organization
Internationalization
RootLayout 파일에 HTML 시작부분을 정의해주는데 전체 파일에서 하나만 있는건가요? 아니면 SubTree마다 Root가 존재하는데 각 RootLayout마다 HTML 시작부분을 정의해줄 수 있는건가요?