详解各版本React路由的跳转的方法


Posted in Javascript onMay 10, 2018

前言

React-Router已经发布了多个版本,利用路由导航的使用方法都不大一样,在这里总结一下。

React-Router 2.0.0 版本

2.0.0版本需要使用browserHistory进行跳转,具体参考一下代码:

import { browserHistory } from 'react-router'
browserHistory.push('/path')

React-Router 2.4.0版本以上

React-Router 2.4.0版本以上,可以通过mixin的方法,使组件增加this.router属性,然后进行相应的操作,具体mixin代码参考如下:

import { withRouter } from 'react-router';
clsss ABC extends Component {
}
module.exports = withRouter(ABC);

用过mixin的组件,会具有this.router的属性,只需要使用this.props.router.push('/path') 就可以跳转到相应的路由了。

React-Router 3.0.0版本以上

3.0.0版本以后不需要再手动mixin相关的router属性,在任何需要跳转的组件中写this.props.router.push('/path') 就可以跳转到响应的路由了。

React-Router 4.0版本以上

路由的跳转

React-Router 4.0对路由进行了改进,router属性改为了history属性,使用方法还是和3.0差不多,任何需要跳转的地方使用this.props.history.push('/path') 就可以进行跳转了

参数的获取

使用this.props.match.params.xxx 可以获取到当前路由的参数

总结

从以上的使用方法来看,react router的导航使用上变得越来越简单。希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript 语法基础 想学习js的朋友可以看看
Dec 16 Javascript
javascript面向对象编程代码
Dec 19 Javascript
js遍历td tr等html元素
Dec 13 Javascript
jQuery中first()方法用法实例
Jan 06 Javascript
JavaScript中数据结构与算法(一):栈
Jun 19 Javascript
基于jquery实现放大镜效果
Aug 17 Javascript
详解使用Vue.Js结合Jquery Ajax加载数据的两种方式
Jan 10 Javascript
移动端效果之Swiper详解
Oct 09 Javascript
vue-router懒加载速度缓慢问题及解决方法
Nov 25 Javascript
js中int和string数据类型互相转化实例
Jan 16 Javascript
150行代码带你实现微信小程序中的数据侦听
May 17 Javascript
深入理解Antd-Select组件的用法
Feb 25 Javascript
React路由管理之React Router总结
May 10 #Javascript
React从react-router路由上做登陆验证控制的方法
May 10 #Javascript
详解Angular路由之路由守卫
May 10 #Javascript
JavaScript实现一个简易的计算器实例代码
May 10 #Javascript
浅谈node.js 命令行工具(cli)
May 10 #Javascript
Js经典案例的实例代码
May 10 #Javascript
Vue使用vux-ui自定义表单验证遇到的问题及解决方法
May 10 #Javascript
You might like
ninety plus是什么?ninety plus咖啡好吗?
2021/03/04 新手入门
静态图片的十一种滤镜效果--不支持Ie7及非IE浏览器。
2007/03/06 Javascript
javascript 常用代码技巧大收集
2009/02/25 Javascript
基于jQuery的弹出消息插件 DivAlert之旅(一)
2010/04/01 Javascript
通过正则格式化url查询字符串实现代码
2012/12/28 Javascript
javascript简单事件处理和with用法介绍
2013/09/16 Javascript
jQuery解析XML文件同时动态增加js文件的方法
2015/06/01 Javascript
基于javascript实现全屏漂浮广告
2016/03/31 Javascript
Spring MVC中Ajax实现二级联动的简单实例
2016/07/06 Javascript
总结十个Angular.js由浅入深的面试问题
2016/08/26 Javascript
jQuery学习之DOM节点的插入方法总结
2017/01/22 Javascript
vue跨域解决方法
2017/10/15 Javascript
jQuery实现表格隔行换色
2018/09/01 jQuery
在element-ui的el-tree组件中用render函数生成el-button的实例代码
2018/11/05 Javascript
[02:57]DOTA2亚洲邀请赛 SECRET战队出场宣传片
2015/02/07 DOTA
Python实现从url中提取域名的几种方法
2014/09/26 Python
Python引用传值概念与用法实例小结
2017/10/07 Python
python中文件变化监控示例(watchdog)
2017/10/16 Python
python中字符串内置函数的用法总结
2018/09/13 Python
python:按行读入,排序然后输出的方法
2019/07/20 Python
Pytorch 多维数组运算过程的索引处理方式
2019/12/27 Python
解决python运行启动报错问题
2020/06/01 Python
基于keras中的回调函数用法说明
2020/06/17 Python
HTML5+CSS3应用详解
2014/02/24 HTML / CSS
碧欧泉美国官网:Biotherm美国
2016/08/31 全球购物
美国相机和电子产品零售商:Beach Camera
2020/11/26 全球购物
美国乒乓球设备、配件和服装品牌:Killerspin
2020/06/07 全球购物
初中地理教学反思
2014/01/11 职场文书
企业整改报告范文
2014/11/08 职场文书
2014年教育教学工作总结
2014/11/13 职场文书
店长岗位职责
2015/02/11 职场文书
2015年技术员工作总结
2015/04/10 职场文书
工厂员工辞职信范文
2015/05/12 职场文书
追悼词范文大全
2015/06/23 职场文书
IDEA2021.2配置docker如何将springboot项目打成镜像一键发布部署
2021/09/25 Java/Android
MySQL数据库安装方法与图形化管理工具介绍
2022/05/30 MySQL