"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > React 라우팅 마스터하기: 애플리케이션 탐색을 위한 완벽한 가이드

React 라우팅 마스터하기: 애플리케이션 탐색을 위한 완벽한 가이드

2024-11-07에 게시됨
검색:419

Mastering React Routing: A Complete Guide to Navigating Your Application

1. React Router 소개

React Router는 React 애플리케이션에서 라우팅을 처리하기 위한 라이브러리입니다. 이를 통해 앱이 전체 페이지를 다시 로드하지 않고도 다양한 구성 요소와 보기 사이를 탐색할 수 있어 사용자 경험이 원활해집니다.


2. 기본 설정

react-router-dom을 설치하여 시작하세요:

npm install react-router-dom

BrowserRouter, 경로 및 경로를 사용하여 기본 라우팅 설정:

import React from 'react';
import { BrowserRouter as Router, Routes, Route, Link } from 'react-router-dom';

const Home = () => 

Home

; const About = () =>

About

; const App = () => { return ( } /> } /> ); }; export default App;

3. 중첩 라우팅

더 복잡한 앱의 경우 경로를 중첩할 수 있습니다. 상위 구성 요소에 중첩 경로를 설정하는 방법은 다음과 같습니다.

import React from 'react';
import { BrowserRouter as Router, Routes, Route, Link } from 'react-router-dom';

const Dashboard = () => 

Dashboard Home

; const Profile = () =>

Your Profile

; const DashboardLayout = () => { return (
} /> } />
); }; const App = () => { return ( } /> ); }; export default App;

4. 동적 라우팅

동적 라우팅을 사용하면 URL에 매개변수를 전달할 수 있습니다. 동적 경로를 정의하고 액세스하는 방법은 다음과 같습니다.

import { useParams } from 'react-router-dom';

const User = () => {
  const { id } = useParams();
  return 

User ID: {id}

; }; const App = () => { return ( } /> ); }; export default App;

5. 보호된 경로

보호된 경로를 구현하려면 사용자 정의 PrivateRoute 구성요소를 생성할 수 있습니다.

import { Navigate, Outlet } from 'react-router-dom';

const useAuth = () => {
  const user = { loggedIn: true }; // Replace with actual auth logic
  return user && user.loggedIn;
};

const PrivateRoute = () => {
  const isAuth = useAuth();
  return isAuth ?  : ;
};

const App = () => {
  return (
    
      
        } />
        }>
          } />
        
      
    
  );
};

export default App;

6. 프로그래밍 방식 탐색

때때로 양식 제출 후와 같이 프로그래밍 방식으로 탐색하고 싶을 수도 있습니다. React Router v6에서 useNavigate 후크를 사용하세요:

import { useNavigate } from 'react-router-dom';

const Login = () => {
  const navigate = useNavigate();

  const handleLogin = () => {
    // Login logic here...
    navigate('/dashboard');
  };

  return (
    

Login

); }; export default Login;

7. 404페이지

포괄 경로를 생성하여 404(찾을 수 없음) 오류를 처리합니다.

const NotFound = () => 

404 - Page Not Found

; const App = () => { return ( } /> } /> } /> ); }; export default App;

8. 성능 고려 사항

대규모 애플리케이션의 경우 지연 로딩 경로를 사용하면 성능이 향상될 수 있습니다. React.lazy() 및 Suspense를 사용하여 지연 로딩을 구현하는 방법은 다음과 같습니다.

import React, { Suspense, lazy } from 'react';
import { BrowserRouter as Router, Routes, Route } from 'react-router-dom';

const Home = lazy(() => import('./Home'));
const About = lazy(() => import('./About'));

const App = () => {
  return (
    
      Loading...}>
        
          } />
          } />
        
      
    
  );
};

export default App;

릴리스 선언문 이 기사는 https://dev.to/mourya_modugula/mastering-react-routing-a-complete-guide-to-navigating-your-application-56dk?1에 복제되어 있습니다. 침해가 있는 경우, Study_golang@163으로 문의하시기 바랍니다. .com에서 삭제하세요
최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3