개발나라 스용공주

[React] 페이지 이동하기 - Link, useNavigate 본문

WEB/React

[React] 페이지 이동하기 - Link, useNavigate

스용공주 2025. 4. 19. 13:49
728x90
728x90

이번 글은 페이지 이동 방식에 대한 글이다.

 


 

[ 1. 링크로 이동 ]

=> 링크가 필요할 때 사용

 

1) Link를 임포트해준다

import { Routes, Route, Link } from "react-router-dom";

 

2) Link의 to로 연결해줄 링크와 연결시켜준다.

<div>
  <Link to={"/"}>Home</Link>
  <Link to={"/new"}>New</Link>
  <Link to={"/diary"}>Diary</Link>
</div>
import "./App.css";
import { Routes, Route, Link } from "react-router-dom";
import Diary from "./pages/Diary";
import Home from "./pages/Home";
import New from "./pages/New";
import Notfound from "./pages/NotFound";

function App() {
  return (
    <>
      <div>
        <Link to={"/"}>Home</Link>
        <Link to={"/new"}>New</Link>
        <Link to={"/diary"}>Diary</Link>
      </div>
      <Routes>
        <Route path="/" element={<Home />} />
        <Route path="/new" element={<New />} />
        <Route path="/diary" element={<Diary />} />
        <Route path="*" element={<Notfound />} />
      </Routes>
    </>
  );
}

export default App;

링크 Home 클릭 시 실행

 

 


 

 

[  2. 버튼으로 이동  ]

=> 이벤트 핸들러 안에서 특정조건에 따라 페이지 이동

 

1) useNavigate는 페이지를 실제로 이동시키는 navigate 함수를 반환한다. 

import { Routes, Route, Link, useNavigate } from "react-router-dom";

 

2) useNavigate를 호출할 때 반환되는 내비게이팅 함수를 변수 nav에 저장한다.

const nav = useNavigate();

 

3) 버튼 클릭 시 navigate 함수를 호출하고 인수로는 이동하려는 경로를 넣어준다.

const onCLickButton=()=>{
    nav("/new");
}

 

4) 해당 함수를 버튼이 클릭될 시 실행되도록 해준다.

<button onClick={onCLickButton}>
        New 페이지로 이동
</button>

 

버튼 클릭 시 /new 페이지로 이동

 

 


728x90
728x90
Comments