当前位置:首页 > React

如何react页面跳转

2026-01-23 19:41:51React

使用 React Router 进行页面跳转

React Router 是 React 中最常用的路由管理库,支持声明式和编程式导航。

安装 React Router:

npm install react-router-dom

声明式导航(使用 Link 组件):

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

function App() {
  return (
    <Link to="/about">跳转到关于页面</Link>
  );
}

编程式导航(使用 useNavigate 钩子):

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

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

  return (
    <button onClick={() => navigate('/about')}>跳转</button>
  );
}

配置路由表

在根组件中配置路由表:

如何react页面跳转

import { BrowserRouter, Routes, Route } from 'react-router-dom';

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

动态路由跳转

带参数的跳转:

navigate('/user/123'); // 跳转到动态路由

在目标组件中获取参数:

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

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

重定向操作

使用 Navigate 组件进行重定向:

如何react页面跳转

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

function ProtectedRoute() {
  const isAuth = false;
  return isAuth ? <Dashboard /> : <Navigate to="/login" />;
}

编程式重定向:

navigate('/login', { replace: true });

路由跳转传参

通过 state 传递参数:

navigate('/about', { state: { fromHome: true } });

在目标组件获取参数:

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

function About() {
  const location = useLocation();
  console.log(location.state.fromHome);
}

路由守卫实现

通过高阶组件实现权限控制:

function PrivateRoute({ children }) {
  const auth = useAuth();
  return auth ? children : <Navigate to="/login" />;
}

// 使用方式
<Route path="/dashboard" element={<PrivateRoute><Dashboard /></PrivateRoute>} />

标签: 跳转页面
分享给朋友:

相关文章

vue 实现页面返回

vue 实现页面返回

实现页面返回的方法 在Vue中实现页面返回功能可以通过多种方式实现,以下是几种常见的方案: 使用Vue Router的go方法 通过Vue Router的go方法可以控制浏览器的历史记录导航。ro…

vue实现反馈页面

vue实现反馈页面

Vue 实现反馈页面的方法 基础表单结构 使用 Vue 的模板语法构建反馈表单,包含输入框、下拉选择、复选框等基础元素。表单需绑定 v-model 实现数据双向绑定。 <template&g…

vue实现关闭页面

vue实现关闭页面

关闭当前页面的方法 在Vue中关闭当前页面可以通过JavaScript的window.close()方法实现。该方法会关闭当前浏览器窗口或标签页。 methods: { closePage()…

js实现跳转

js实现跳转

使用 window.location 跳转 通过修改 window.location.href 实现页面跳转,这是最常用的方法。 window.location.href = 'https://…

h5实现页面跳转页面

h5实现页面跳转页面

H5 实现页面跳转的方法 在 H5(HTML5)中,实现页面跳转可以通过多种方式完成,以下是常见的几种方法: 使用 <a> 标签 通过 HTML 的 <a> 标签实现页面跳转…

vue实现前端跳转

vue实现前端跳转

Vue 实现前端跳转的方法 在 Vue 中实现前端跳转主要通过路由(Vue Router)完成,以下是几种常见的方式: 声明式导航 使用 <router-link> 组件实现跳转,适合模…