当前位置:首页 > React

react router如何跳转

2026-02-11 23:42:12React

React Router 跳转方法

React Router 提供了多种方式进行页面跳转,以下是常见的几种方法:

使用 <Link> 组件

react router如何跳转

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

<Link to="/about">关于我们</Link>

使用 useNavigate Hook

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

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

  const handleClick = () => {
    navigate('/about');
    // 或者带状态跳转
    navigate('/about', { state: { from: 'home' } });
  };

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

编程式导航(类组件)

react router如何跳转

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

class MyComponent extends React.Component {
  handleClick = () => {
    this.props.history.push('/about');
    // 或者替换当前历史记录
    this.props.history.replace('/about');
  };

  render() {
    return <button onClick={this.handleClick}>跳转</button>;
  }
}

export default withRouter(MyComponent);

带参数跳转

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

// 查询参数跳转
navigate('/search?q=react');

// 状态传递
navigate('/user', { state: { id: 123 } });

重定向

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

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

注意事项

  • 使用 useNavigate 需要在函数组件中
  • 类组件需要使用 withRouter 高阶组件或通过 props 传递 history
  • 跳转时可以传递 state 对象,但不会显示在 URL 中
  • 动态路由需要在路由配置中定义对应模式(如 /user/:id

标签: 跳转react
分享给朋友:

相关文章

react如何记忆

react如何记忆

React 记忆技术 在 React 中,记忆(Memoization)是一种优化技术,用于避免不必要的重新渲染或计算。React 提供了多种内置方法和第三方库来实现记忆功能。 useMemo Ho…

vue实现拼接路径实现跳转

vue实现拼接路径实现跳转

实现拼接路径跳转的方法 在Vue中,可以通过多种方式拼接路径并实现跳转。以下是几种常见的实现方法: 使用router-link组件 通过模板中的router-link组件动态拼接路径: <r…

如何评价react native

如何评价react native

React Native 的优势 跨平台开发效率高:基于 JavaScript 和 React 语法,可同时开发 iOS 和 Android 应用,减少重复代码量。性能接近原生:通过原生组件渲染,性能…

php实现页面跳转

php实现页面跳转

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

js实现跳转

js实现跳转

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

h5实现页面跳转页面跳转页面

h5实现页面跳转页面跳转页面

H5 实现页面跳转的方法 使用 <a> 标签实现跳转 通过超链接标签 <a> 的 href 属性指定目标页面路径,用户点击后跳转。 <a href="target.…