react-router-dom v6版本跳转路径的实现方法

 更新时间:2024年03月14日 09:41:44   作者:前端学习冲冲冲  
这篇文章主要介绍了react-router-dom v6版本跳转路径的实现方法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

react-router-dom v6版本跳转路径

说明

在V5中,可以通过withRouter包裹当前组件使得当前组件可以拥有其根组件的props属性,也即可以拿到history对象等

但在V6版本中,使用了useNavigate代替withRouter,当需要路由跳转时,可以更快捷的使用

使用示例

1.引入useNavigate并且定义一个navigate


在这里插入图片描述

2.在需要点击跳转路由的地方,直接在点击事件中使用navigate(),括号内加入需要跳转的路由path即可正常跳转

react-router-domV6版本在js文件使用history跳转

1.在 utils 下面 创建 history.js  

// utils/history.js
import { createBrowserHistory } from "history";
export const customHistory = createBrowserHistory()

2. 在 App.tsx 中引入 unstable_HistoryRouter 和 customHistory。

3.在 unstable_HistoryRouter 组件的 history 属性上把 customHistory 传递过去。

// App.tsx
import { unstable_HistoryRouter as Router, Route, Routes, Navigate } from 'react-router-dom';
import Layout from '@/pages/Layout';
import Login from './pages/Login';
import {customHistory} from '@/utils/history'
import './App.scss';
function App() {
  return (
    <div className="App">
      <Router history={customHistory}>
        <Routes>
          <Route path="/" element={<Navigate to="/home" />}></Route>
          <Route path="/home" element={<Layout />}></Route>
          <Route path="/login" element={<Login />}></Route>
        </Routes>
      </Router>
    </div>
  );
}
 
export default App;

4.然后,就可以在非组件环境下通过 customHistory 进行路由跳转等操作了。比如,在 http.js 。

import { customHistory } from '@/utils/history'
 
customHistory.push('/login')
 <unstable_HistoryRouter>

提供一个将history作为prop的实例对象。可以使用它在非React的上下文环境或全局变量中使用Router。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • React Router v6路由懒加载的2种方式小结

    React Router v6路由懒加载的2种方式小结

    React Router v6 的路由懒加载有2种实现方式,1是使用react-router自带的 route.lazy,2是使用React自带的 React.lazy,下面我们就来看看它们的具体实现方法吧
    2024-04-04
  • React中的State和Props深入理解及关键区别

    React中的State和Props深入理解及关键区别

    state和props是React中两个核心概念,它们共同构成了组件的数据管理机制,本文将详细探讨 state 和 props 的定义、用途、特点以及它们之间的关键区别,并提供一些最佳实践,感兴趣的朋友跟随小编一起看看吧
    2026-01-01
  • react 生命周期实例分析

    react 生命周期实例分析

    这篇文章主要介绍了react 生命周期,结合实例形式分析了react 生命周期基本原理、操作步骤与注意事项,需要的朋友可以参考下
    2020-05-05
  • 浅谈React Router关于history的那些事

    浅谈React Router关于history的那些事

    这篇文章主要介绍了浅谈React Router关于history的那些事,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04
  • React 源码调试方式

    React 源码调试方式

    这篇文章主要为大家介绍了React源码调试方式实例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-08-08
  • 聊聊React onClick 传递参数的问题

    聊聊React onClick 传递参数的问题

    很多朋友向小编反映一个问题关于React onClick 传递参数的问题,当点击删除按钮需要执行删除操作,针对这个问题该如何处理呢?下面小编给大家带来了React onClick 传递参数的问题,感兴趣的朋友一起看看吧
    2021-10-10
  • React通过conetxt实现多组件传值功能

    React通过conetxt实现多组件传值功能

    Context 提供了一种在组件之间共享此类值的方式,而不必显式地通过组件树的逐层传递 props。本文给大家介绍React通过conetxt实现多组件传值功能,感兴趣的朋友一起看看吧
    2021-10-10
  • react 定位组件源码解析

    react 定位组件源码解析

    这篇文章主要为大家介绍了react定位组件源码解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-03-03
  • React框架核心原理全面深入解析

    React框架核心原理全面深入解析

    React是前端开发每天都用的前端框架,自然要深入掌握它的原理。我用 React 也挺久了,这篇文章就来总结一下我对 react 原理的理解,有需要的朋友可以借鉴参考下,希望能够有所帮助
    2022-11-11
  • React新文档切记不要滥用effect

    React新文档切记不要滥用effect

    这篇文章主要为大家介绍了React新文档滥用effect出现的问题详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-07-07

最新评论