Parallel & Intercepting Routes는 next.js 13.3 버전에 추가된 기능이다.
슬롯은 @folder 폴더를 선언해서 만들수 있다
Intercepting Routes를 학습하기 전에 Hard Navigation과 Soft Navigation의 개념을 먼저 보자
next/link
나 next/router
를 사용하여 페이지 간의 이동을 처리한다. 사용자가 링크를 클릭하거나 프로그래밍 방식으로 페이지를 변경할 때 발생한다.interception routes는 (..)
과 같은 표기를 통해서 생성할 수 있다.
https://twitter.com/ctnicholasdev/status/1644130902006714371
NextGram 사이트에서 parallel routes와 intercepting routes에 대해 테스트를 해볼 수 있다.
NextGram github : https://github.com/vercel-labs/nextgram
폴더 구조를 보면 아래 구조로 작성됐다.
1. (..)photos/[id]
로 interception routes로 선언
2. 동일한 세그먼트 구조를 가지는 photos[id]/page.js
으로 선언
NextGram 사이트에서 사진을 클릭해서 soft navigation 인 next/link
으로 이동해보자
parallel route에 있는 interception route가 해당 라우트에 렌더링을 인터셉트해서 모달을 띄운다.
기존 dynamic routes으로 작성된 app/photos/[id]/page.js
파일이 있지만 soft navigation intercept인 @modal/(..)photos/
route에 의해서 인터셉트 된다.
뒤로가기
도 soft navigation 으로 위와 같이 모달창이 띄어진다.
photos/[id]/page.js
파일이 렌더링된다.https://nextjs.org/docs/app/building-your-application/routing/parallel-routes
https://nextjs.org/docs/app/building-your-application/routing/intercepting-routes
잘보고 갑니다~