DEVELOP
article thumbnail

14버전이 되면서 라우팅 방식이 바뀐 Next.js 14 의 페이지 라우팅와 동적 라우팅, 404페이지 변경방법을 알아보고자 한다. 

라우팅의 경로에 해당하는 파일들은 page.* 가 파일이름이 되어야 한다. 

 

1. 루트경로( / )

가장 루트 경로는 

src/app/page.tsx

 

2. 폴더이름경로 ( /about )

/about 경로에 해당하는 페이지를 만들고 싶다면, 

src/app/about/page.tsx

 

3. 동적라우팅 (/about/:id)

about/ 뒤에 아이디가 오는 페이지를 만들고 싶다면,

src/app/about/[id]/page.tsx

 

타입스크립트에서는 params의 타입을 지정해주지 않으면 에러가 난다.

바인딩 요소 'params'에 암시적으로 'any' 형식이 있습니다.ts(7031)

 

아래처럼 타입을 지정해주어야 에러가 나지 않고 잘된다! 

<javascript />
interface AboutDetailProps { params: { id: string }; } export default function AboutDetail({ params }: AboutDetailProps) { return ( <div className="absolute top-1/2 left-1/2 -translate-x-1/2"> About | {params.id} </div> ); }

 

4. 404페이지

기본적으로, next js는 404 페이지 처리를 해주기 때문에 따로 지정해주지 않아도 기본 페이지가 뜨게 된다. 

아래는 라우팅 정의되지 않은 페이지를 접속했을 때 출력되는 페이지

이 페이지를 커스텀하고 싶다면, 

src/app/not-found.tsx 파일을 생성한다.

profile

DEVELOP

@JUNGY00N