⊗jsrtPmRtAR 22 of 47 menu

React Router에 라우터 추가하기

라우터에 대해 약간 익숙해졌으니, 이제 애플리케이션에 라우터를 하나 추가할 수 있습니다.

하지만 먼저 이전 수업에서 생성한 애플리케이션 템플릿을 약간 정리해야 합니다. 구체적으로는 src 폴더를 정리하겠습니다. 여기서 assets 폴더와, App.css, App.jsx 파일들을 제거하세요. 결국 그 안에는 main.jsxindex.css만 남게 될 것입니다.

index.css 파일을 열고 내용을 완전히 비우세요. 비어 있는 상태로 둡니다.

이제 메인 파일인 main.jsx를 처리하겠습니다. 그 안에는 다음과 같은 코드가 있을 것입니다:

import './index.css' import React from 'react'; import ReactDOM from 'react-dom/client'; ReactDOM.createRoot(document.getElementById('root')).render( <React.StrictMode> </React.StrictMode> );

이제 라우터를 추가할 수 있습니다. 웹 애플리케이션에서 가장 흔히 사용되므로 BrowserRouter를 사용하겠습니다. 현대적인 구문도 잊지 마세요. import 문을 추가합니다:

import { createBrowserRouter, RouterProvider, } from 'react-router-dom';

그런 다음, router 상수를 만들고 import 문 아래에 우리의 BrowserRouter를 생성합니다. 메인 페이지에 'Hello Router!'라는 문구가 있는 div가 표시되도록 하겠습니다. 이를 위해 메인 페이지 경로와 표시할 요소를 지정합니다:

const router = createBrowserRouter([ { path: '/', element: <div>Hello Router!</div>, }, ]);

RouterProvider 컴포넌트를 추가하고 위에서 생성한 라우터를 넣어야 합니다. 이 컴포넌트는 모든 라우터 객체를 받아, 우리의 애플리케이션을 렌더링하고 다른 API들을 연결합니다:

ReactDOM.createRoot(document.getElementById('root')).render( <React.StrictMode> <RouterProvider router={router} /> </React.StrictMode> );

전체 코드는 다음과 같을 것입니다:

import './index.css' import React from 'react'; import ReactDOM from 'react-dom/client'; import { createBrowserRouter, RouterProvider, } from 'react-router-dom'; const router = createBrowserRouter([ { path: '/', element: <div>Hello Router!</div>, }, ]); ReactDOM.createRoot(document.getElementById('root')).render( <React.StrictMode> <RouterProvider router={router} /> </React.StrictMode> );

변경 사항을 저장합니다. 축하합니다! 우리의 애플리케이션이 더 이상 오류를 표시하지 않습니다. 이제 애플리케이션을 실행하면 브라우저의 메인 페이지에서 'Hello Router!'를 볼 수 있습니다.

제공된 자료를 활용하여, 이전 수업의 과제로 생성한 애플리케이션의 메인 페이지에 'I'm number one in React!'라는 텍스트가 포함된 단락이 표시되도록 하세요.

한국어
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақКыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
우리는 웹사이트 운영, 분석 및 개인화를 위해 쿠키를 사용합니다. 데이터 처리는 개인정보 처리방침에 따라 이루어집니다.
모두 수락 설정 거부