이전 글
1. 2022.02.09 - [React] - [ React ] React Router
react-router-dom :: <Link> component
react-rotuer-dom library의 <Link> component는 html의 <a> tag와 같이 연결된 주소로 페이지를 전환시켜준다.
<a> tag의 경우 페이지를 전환하는 과정에서 새로운 페이지를 불러오면서 애플리케이션이 가지고 있던 모든 상태를 날려버려 렌더링되어있던 모든 컴포넌트들도 모두 사라지고 페이지를 모두 처음부터 다시 렌더링하게 된다.
그렇기 때문에 react-rotuer-dom library를 사용하여 라우팅 하는 경우에는 <a>태그로 이루어져 있지만 페이지 전환을 방지하는 기능이 내장되어 있는 <Link> component 를 사용하여 페이지 전환을 해야한다.
<Link> component를 사용하여 페이지를 전환하면 페이지를 새로 불러오지 않고 애플리케이션은 유지를 한 상태에서 HTML 5 History API를 사용하여 페이지의 주소만 변경해준다.
<Link> Component 사용방법
<Link to="주소">내용</Link>
App.js
// src/App.js
import './App.css';
import {Link, Route, Routes} from "react-router-dom";
import Home from "./Home";
import About from "./About";
function App() {
return (
<div className="App">
<h1> 라우팅 프로젝트 </h1>
<ul>
<li>
<h2><Link to="/">Home</Link></h2>
</li>
<li>
<h2><Link to="/about">About</Link></h2>
</li>
</ul>
<Routes>
<Route path="/" element={<Home />}>Home</Route>
<Route path="/about" element={<About />}>About</Route>
</Routes>
</div>
);
}
export default App;
실행화면
728x90
'Framework&Library > React' 카테고리의 다른 글
[ React ] React Router #3 URL parameter & Query (0) | 2022.02.11 |
---|---|
[ React ] React Router #1 (0) | 2022.02.09 |
[ React : CSS ] Component styling (1) | 2022.01.05 |
[ React ] React 동작 원리( DOM, Virtual DOM) (4) | 2021.12.10 |
[ React : CRA ] create-react-app ( CRA ) 시작 (0) | 2021.12.10 |