当前位置:首页 > React

react如何页面跳转

2026-02-26 06:03:57React

React 页面跳转方法

在 React 中实现页面跳转可以通过多种方式,以下是常见的几种方法:

使用 React Router 的 Link 组件

通过 react-router-dom 提供的 Link 组件实现声明式导航:

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

function MyComponent() {
  return (
    <Link to="/target-path">跳转到目标页</Link>
  );
}

使用 useNavigate Hook(React Router v6)

在函数组件中通过编程式导航实现跳转:

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

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

  const handleClick = () => {
    navigate('/target-path');
    // 可附加状态
    navigate('/target-path', { state: { data: 'value' } });
  };

  return <button onClick={handleClick}>跳转</button>;
}

使用 history.push(React Router v5)

在旧版本中通过 history 对象实现跳转:

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

function MyComponent() {
  const history = useHistory();

  const handleClick = () => {
    history.push('/target-path');
  };

  return <button onClick={handleClick}>跳转</button>;
}

使用重定向组件

通过 <Navigate> 组件实现条件跳转:

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

function ProtectedRoute({ isAuthenticated }) {
  return isAuthenticated ? <MyPage /> : <Navigate to="/login" />;
}

外部链接跳转

对于非路由链接(如外部URL),直接使用 <a> 标签:

react如何页面跳转

<a href="https://external.com" target="_blank" rel="noopener noreferrer">
  外部链接
</a>

注意事项

  • 确保项目已安装 react-router-dom(当前推荐 v6 版本)
  • 路由配置需在根组件中完成(如 <BrowserRouter>
  • 编程式导航可传递 state 参数,目标页面通过 useLocation 获取
  • 动态路由参数通过 /path/:id 形式定义,跳转时填写实际值(如 /items/123

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

相关文章

vue实现界面跳转

vue实现界面跳转

路由配置 在Vue项目中实现界面跳转通常依赖Vue Router。需在router/index.js中配置路由路径和组件映射关系: import { createRouter, createWebH…

h5实现登录页面跳转页面跳转页面跳转

h5实现登录页面跳转页面跳转页面跳转

使用HTML5实现登录页面跳转 在HTML5中实现登录页面跳转可以通过多种方式完成,包括表单提交、JavaScript跳转和超链接跳转。以下是几种常见的实现方法。 表单提交跳转 使用HTML表单的a…

vue实现跳转

vue实现跳转

Vue 实现页面跳转的方法 在 Vue 中实现页面跳转可以通过多种方式,包括使用 Vue Router 进行编程式导航或声明式导航,以及直接使用原生 JavaScript 方法。以下是几种常见的实现方…

vue实现前端跳转

vue实现前端跳转

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

vue实现页面刻度

vue实现页面刻度

实现页面刻度的基本思路 在Vue中实现页面刻度通常用于展示进度、测量或标记特定位置。可以通过动态计算和渲染刻度元素来实现,结合CSS样式控制显示效果。 使用动态渲染刻度线 通过v-for指令动态生成…

vue实现页面实时

vue实现页面实时

Vue 实现页面实时更新的方法 在 Vue 中实现页面实时更新,通常涉及数据绑定、响应式系统以及异步更新的机制。以下是几种常见的方法: 使用 Vue 的响应式系统 Vue 的核心特性之一是响应式系统…