当前位置:首页 > React

react当中如何定义路由格式

2026-03-11 10:53:37React

路由定义基础

在React中,通常使用react-router-dom库定义路由。安装依赖后,通过BrowserRouterRoutesRoute组件配置路由路径与组件的映射关系。

import { BrowserRouter, Routes, Route } from 'react-router-dom';
import Home from './Home';
import About from './About';

function App() {
  return (
    <BrowserRouter>
      <Routes>
        <Route path="/" element={<Home />} />
        <Route path="/about" element={<About />} />
      </Routes>
    </BrowserRouter>
  );
}

动态路由参数

通过冒号(:)定义动态路由参数,例如/user/:id。在目标组件中使用useParams钩子获取参数值。

react当中如何定义路由格式

<Route path="/user/:id" element={<UserProfile />} />

// UserProfile组件内
import { useParams } from 'react-router-dom';
function UserProfile() {
  const { id } = useParams();
  return <div>User ID: {id}</div>;
}

嵌套路由配置

使用<Outlet>组件实现嵌套路由,父路由需定义子路由的渲染位置。

react当中如何定义路由格式

<Route path="/dashboard" element={<Dashboard />}>
  <Route path="settings" element={<Settings />} />
  <Route path="profile" element={<Profile />} />
</Route>

// Dashboard组件内需包含Outlet
import { Outlet } from 'react-router-dom';
function Dashboard() {
  return (
    <div>
      <h1>Dashboard</h1>
      <Outlet /> {/* 子路由在此渲染 */}
    </div>
  );
}

路由通配与404处理

path="*"匹配未定义的路由,通常用于渲染404页面。

<Route path="*" element={<NotFoundPage />} />

编程式导航

通过useNavigate钩子实现代码跳转,例如表单提交后跳转页面。

import { useNavigate } from 'react-router-dom';
function LoginButton() {
  const navigate = useNavigate();
  return <button onClick={() => navigate('/dashboard')}>Login</button>;
}

标签: 路由定义
分享给朋友:

相关文章

vue 路由实现

vue 路由实现

Vue 路由实现方法 Vue Router 是 Vue.js 的官方路由管理器,用于构建单页面应用(SPA)。以下是实现 Vue 路由的基本步骤: 安装 Vue Router 使用 npm 或 ya…

java如何定义数组

java如何定义数组

定义数组的基本语法 在Java中,数组可以通过以下两种方式定义: 方式一:声明数组并指定长度 数据类型[] 数组名 = new 数据类型[数组长度]; 例如: int[] numbers = n…

vue实现路由守卫

vue实现路由守卫

路由守卫的基本概念 路由守卫是Vue Router提供的一种机制,用于在路由跳转前后执行特定的逻辑。它可以用于权限控制、页面访问限制、数据预加载等场景。Vue Router提供了多种路由守卫,包括全局…

react如何获取路由

react如何获取路由

获取当前路由路径 在React中获取当前路由路径可以通过react-router-dom提供的useLocation钩子。useLocation返回一个包含当前路由信息的对象,其中pathname属性…

elementui路由

elementui路由

使用Element UI与Vue Router集成 Element UI是一个基于Vue.js的组件库,与Vue Router可以无缝集成。通过Vue Router管理路由,结合Element UI的…

vue路由实现segment

vue路由实现segment

Vue 路由实现 Segment 风格路由 在 Vue Router 中实现类似 Segment 风格的路由(即扁平化、无嵌套的 URL 结构),可以通过动态路由和编程式导航实现。 安装 Vue R…