React Router에 라우터 추가하기

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

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

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

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

main.jsximport './index.css'
import React from 'react';
import ReactDOM from 'react-dom/client';

ReactDOM.createRoot(document.getElementById('root')).render(
  <React.StrictMode>

  </React.StrictMode>
);

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

main.jsximport {
  createBrowserRouter,
  RouterProvider,
} from 'react-router-dom';

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

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

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

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

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

main.jsximport './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!'를 볼 수 있습니다.

Задание 1

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