Web Devlopment/NextJs
#15. Private folders
키모형
2025. 12. 27. 15:16
반응형
Next.js(App Router)에서 private folder는 폴더 이름 앞에 _(언더스코어) 를 붙여서 라우팅에서 제외시키는 규칙이에요. 즉, app 아래에 있어도 URL 세그먼트/라우트로 취급되지 않는 “내부용 폴더” 로 만들 수 있습니다. Next.js
어떻게 쓰나
- 규칙: app/.../_folderName/...
- 예시:
app/
blog/
page.tsx // /blog
_components/
Post.tsx // 라우트 아님(내부 컴포넌트)
_lib/
data.ts // 라우트 아님(유틸/데이터)
이렇게 하면 _components, _lib 아래 파일들은 라우트가 절대 생성되지 않고, 필요한 곳에서 import 해서 쓰는 구조로 정리할 수 있어요. Next.js
“그냥 app 안에 파일 두면 되는데” 왜 쓰나?
app 디렉터리는 기본적으로 page/route 파일이 없으면 공개 라우트가 되지 않아서 코드를 같이 둬도 안전하긴 해요. 그래도 private folder를 쓰면: Next.js
- UI 로직과 라우팅 로직을 명확히 분리
- _components, _lib 같은 규칙으로 일관된 구조
- 에디터에서 정리/그룹핑이 쉬움
- 미래 Next.js 특수 파일명과 충돌 방지에 도움
주의할 점 (헷갈리는 포인트)
- _로 시작하는 폴더는 하위까지 전부 라우팅 제외라서, 그 안에 page.tsx를 넣어도 라우트가 안 생깁니다. Next.js
- 만약 “URL 세그먼트 자체를 _something으로 만들고 싶다”면, 폴더명을 %5Fsomething 처럼(언더스코어 URL 인코딩) 만들어야 합니다.
반응형