-
[React Router v6] Nested Routes에 대해 알아보자Frontend/React 2022. 5. 12. 14:10
React Router v6에서 Nested Routes 활용하는 방법을 알아보자
라우터에 경로를 중첩하여 작성한다.
function Router() { return ( <Routes> <Route path="invoices" element={<Invoices />}> <Route path=":invoiceId" element={<Invoice />} /> <Route path="sent" element={<SentInvoices />} /> </Route> </Routes> ); } export default Router;
이 때 자식은 부모를 상속하며 경로는 다음 세 가지이다.
- /invoices
- /invoices/:invoicesId
<App> <Invoices> <Invoice /> </Invoices> </App>
- /invoices/sent
<App> <Invoices> <SentInvoices /> </Invoices> </App>
부모 element 안에 `<Outlet>`을 통해 자식이 render될 곳을 지정한다.
function Invoices() { return ( <div> <h1>Invoices</h1> <Outlet /> </div> ); } function Invoice() { let { invoiceId } = useParams(); return <h1>Invoice {invoiceId}</h1>; } function SentInvoices() { return <h1>Sent Invoices</h1>; }
이렇게 해서 react-router v6에서 중첩 라우팅 완성!
참고자료
https://reactrouter.com/docs/en/v6/getting-started/overview#nested-routes
반응형'Frontend > React' 카테고리의 다른 글
[Next.js] Image, background-image 삽입하는 방법을 알아보자 (0) 2022.09.05 [React Hook Form] radio button 구현하기 (0) 2022.07.10 [React Router v6] Redirect에 대해 알아보자 (0) 2022.05.08 [React] CRA 프로젝트 배포 시 이미지 경로 설정에 대해 알아보자 (0) 2022.03.20 [React] 페이지 전환에 따라 css 조절하기 (0) 2022.03.17