_app.tsx
나 상위 레이아웃을 여러 곳에서 중복 사용하거나, 불필요하게 폴더를 분리해야
했다.
⇒ Route Group은 이러한 불편을 해소하기 위해 도입된 개념이다.(group)
)이 Route Group이다.page.tsx
, layout.tsx
, loading.tsx
등이 하나의 논리 단위로 묶인다.app/
│
├─ dashboard
│ └─ page.tsx ← 얘네 둘만 특정 레이아웃 적용하고 싶으면
└─ settings
│ └─ page.tsx ← 얘네 둘만 특정 레이아웃 적용하고 싶으면
├─ page.tsx ← 얘는 레이아웃을 적용하지 않고
└─ layout.tsx ← admin 공통 레이아웃
app/
├─ (admin)/ ← Route Group 시작 (이렇게 묶으면 된다)
│ ├─ layout.tsx ← admin 공통 레이아웃
│ ├─ dashboard/
│ │ └─ page.tsx
│ └─ settings/
│ └─ page.tsx
├─ page.tsx ← 일반 홈 페이지
위 구조에서 브라우저 경로 /dashboard
또는 /settings
로 접속하면, 실제 URL에는 (admin)
이 표시되지 않는다. 해당 폴더 안의 레이아웃이 자동으로 적용된다.
⇒ 즉, Route Group 적용 전에 경로랑 달라진 것은 없다.
(경로 상에서만 봤을때 (admin)폴더는 없는 취급하면 됨)