[javascript] 리액트 라우터(Router)의 사용 방법

리액트 앱을 개발하다보면 여러 페이지를 가지는 웹 애플리케이션을 구현해야 할 때가 있습니다. 이때, 리액트 라우터를 사용하면 각 페이지 간의 라우팅을 쉽게 관리할 수 있습니다.

리액트 라우터 소개

리액트 라우터는 싱글 페이지 애플리케이션(SPA)에서 여러 페이지 간의 이동 및 관리를 위한 라이브러리입니다. 이를 통해 URL을 기반으로 컴포넌트를 렌더링하고, 동적인 URL 라우팅 및 내비게이션을 구현할 수 있습니다.

리액트 라우터 설치 및 설정

먼저, 리액트 라우터를 설치해야 합니다. 다음 명령어를 사용하여 리액트 라우터를 설치합니다.

npm install react-router-dom

react-router-dom 패키지는 웹 애플리케이션에서 사용할 수 있는 리액트 라우터의 핵심 기능을 제공합니다.

리액트 앱의 최상위 컴포넌트에서 라우터를 설정해야 합니다. 보통 index.js 파일에서 라우터를 설정합니다. 아래는 라우터를 설정하는 예제 코드입니다.

import React from 'react';
import ReactDOM from 'react-dom';
import { BrowserRouter } from 'react-router-dom';
import App from './App';

ReactDOM.render(
  <BrowserRouter>
    <App />
  </BrowserRouter>,
  document.getElementById('root')
);

Route 컴포넌트로 페이지 라우팅하기

라우터를 설정한 후, 각 페이지에 대한 라우팅을 구현해야 합니다. 이를 위해 Route 컴포넌트를 사용합니다. 각 Route 컴포넌트는 특정 URL 경로와 해당 경로에 렌더링할 컴포넌트를 지정합니다.

아래는 Route 컴포넌트를 사용하여 페이지를 라우팅하는 예제 코드입니다.

import React from 'react';
import { Route, Switch } from 'react-router-dom';
import Home from './Home';
import About from './About';
import Contact from './Contact';

const App = () => {
  return (
    <Switch>
      <Route exact path="/" component={Home} />
      <Route path="/about" component={About} />
      <Route path="/contact" component={Contact} />
    </Switch>
  );
};

export default App;

위 예제에서는 Home, About, Contact 컴포넌트를 각각의 경로에 매핑시켰습니다.

결론

리액트 라우터를 사용하면 SPA에서 다양한 페이지 간의 라우팅을 손쉽게 구현할 수 있습니다. react-router-dom을 활용하여 라우팅 및 내비게이션을 구현하여 웹 애플리케이션의 사용자 경험을 향상시킬 수 있습니다.

리액트 라우터에 대해 더 자세히 알고 싶다면 리액트 라우터 공식 문서를 참고하시기 바랍니다.