React Router
React 애플리케이션에서 클라이언트 측 라우팅을 쉽게 구현할 수 있도록 도와주는 라이브러리
페이지 리로드 없이 URL을 변경하거나, 사용자가 방문한 URL에 따라 서로 다른 컴포넌트를 렌더링하는 기능을 제공
글 페이지 애플리케이션(SPA)에서 페이지 전환을 구현하는데 주로 사용
설치 명령어
// npm
npm install react-router-dom
// yarn
yarn add react-router-dom
예시
// App.js
import React from 'react';
import { BrowserRouter as Router, Routes, Route, Link } from 'react-router-dom';
// 각 페이지 컴포넌트 정의
const Home = () => <h2>Home Page</h2>;
const About = () => <h2>About Page</h2>;
const Contact = () => <h2>Contact Page</h2>;
function App() {
return (
{/* 네비게이션 바 */}
<Router>
<nav>
<ul>
<li><Link to="/">Home</Link></li>
<li><Link to="/about">About</Link></li>
<li><Link to="/contact">Contact</Link></li>
</ul>
</nav>
{/* 페이지 경로 */}
<Routes>
<Route path="/" element={<Home />} />
<Route path="/about" element={<About />} />
<Route path="/contact" element={<Contact />} />
</Routes>
</Router>
);
}
export default App;
- BrowserRouter: 전체 애플리케이션을 감싸서 브라우저 히스토리를 관리
- Routes: 여러 Route를 감싸서 URL 경로에 따라 어떤 컴포넌트를 렌더링할지 결정 (Route Container)
- Route: 각 경로에 맞는 컴포넌트를 지정
- Link: 사용자가 특정 경로로 이동할 수 있도록 링크를 제공
'React' 카테고리의 다른 글
| 사이드이펙트 & useEffect() (0) | 2024.10.21 |
|---|---|
| Axios : 요청&응답 클라이언트 (0) | 2024.10.18 |
| Redux - 편리한 상태관리 (0) | 2024.10.15 |
| React에서 CSS 적용하는 다양한 방법 (0) | 2024.10.14 |
| 리스트 렌더링 filter() & map() (0) | 2024.10.11 |