当前位置:首页 > React

react如何写跳转

2026-01-24 08:02:37React

使用 React Router 进行页面跳转

React 应用中通常使用 react-router-dom 库实现页面跳转。以下是几种常见的跳转方式:

安装依赖包

npm install react-router-dom

在根组件中配置路由

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

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

编程式导航跳转

在函数组件中使用 useNavigate hook

react如何写跳转

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

function Home() {
  const navigate = useNavigate();

  const handleClick = () => {
    // 跳转到 about 页面
    navigate('/about');

    // 带参数跳转
    navigate('/about', { state: { id: 123 } });

    // 替换当前历史记录
    navigate('/about', { replace: true });
  };

  return <button onClick={handleClick}>Go to About</button>;
}

声明式导航跳转

使用 Link 组件

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

function Nav() {
  return (
    <nav>
      <Link to="/">Home</Link>
      <Link to="/about">About</Link>
      <Link to="/user/123">User Profile</Link>
    </nav>
  );
}

路由参数传递和获取

定义带参数的路由

react如何写跳转

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

在目标组件中获取参数

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

function User() {
  const { id } = useParams();
  return <div>User ID: {id}</div>;
}

获取路由状态

使用 useLocation 获取路由状态

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

function About() {
  const location = useLocation();
  const state = location.state; // 获取 navigate 传递的 state

  return <div>Received state: {state?.id}</div>;
}

重定向

使用 Navigate 组件进行重定向

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

function ProtectedRoute({ isLoggedIn, children }) {
  if (!isLoggedIn) {
    return <Navigate to="/login" replace />;
  }
  return children;
}

这些方法覆盖了 React 应用中常见的路由跳转场景,可以根据具体需求选择合适的方式实现页面导航功能。

标签: 跳转如何写
分享给朋友:

相关文章

js实现跳转

js实现跳转

使用 window.location 跳转 通过修改 window.location.href 或直接使用 window.location 实现页面跳转,适用于普通跳转或带参数的 URL。 // 方…

js实现页面跳转

js实现页面跳转

使用 window.location.href 通过修改 window.location.href 实现页面跳转,直接赋值目标 URL 即可。 window.location.href = 'h…

vue 实现登录跳转

vue 实现登录跳转

实现登录跳转的核心逻辑 在Vue中实现登录跳转通常涉及路由守卫、状态管理和API交互。以下是具体实现方式: 配置路由守卫 在路由配置文件中添加beforeEach守卫,检查用户是否已登录。未登录时重…

vue实现页面跳转

vue实现页面跳转

vue实现页面跳转的方法 在Vue中实现页面跳转主要有以下几种方式: 使用router-link组件 router-link是Vue Router提供的组件,用于声明式导航: <rout…

vue文件实现页面跳转

vue文件实现页面跳转

使用 router-link 实现跳转 在 Vue 模板中直接使用 <router-link> 组件,通过 to 属性指定目标路径: <router-link to="/ta…

php实现页面跳转

php实现页面跳转

PHP 页面跳转方法 在 PHP 中,可以通过多种方式实现页面跳转,以下是几种常见的方法: 使用 header() 函数 header() 函数是 PHP 中最常用的跳转方法,通过发送 HTTP…