详解各版本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 相关文章推荐
JQuery Dialog(JS 模态窗口,可拖拽的DIV)
Feb 07 Javascript
javascript 模式设计之工厂模式学习心得
Apr 27 Javascript
jquery实用代码片段集合
Aug 12 Javascript
JS实现在Repeater控件中创建可隐藏区域的代码
Sep 16 Javascript
js、jquery图片动画、动态切换示例代码
Jun 03 Javascript
JavaScript使用function定义对象并调用的方法
Mar 23 Javascript
分享自己用JS做的扫雷小游戏
Feb 17 Javascript
jQuery实现的精美平滑二级下拉菜单效果代码
Mar 28 Javascript
纯js实现瀑布流布局及ajax动态新增数据
Apr 07 Javascript
基于ajax和jsonp的原生封装(实例)
Oct 16 Javascript
微信小程序仿微信运动步数排行(交互)
Jul 13 Javascript
js正则表达式校验指定字符串的方法
Jul 23 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
超级实用的7个PHP代码片段分享
2012/01/05 PHP
php程序员应具有的7种能力小结
2014/11/27 PHP
详解WordPress中的头像缓存和代理中的缓存更新方法
2016/03/01 PHP
Laravel框架下的Contracts契约详解
2020/03/17 PHP
phpstorm激活码2020附使用详细教程
2020/09/25 PHP
纯JAVASCRIPT图表动画插件Highcharts Examples
2011/04/16 Javascript
js模仿windows桌面图标排列算法具体实现(附图)
2013/06/16 Javascript
jquery html动态生成select标签出问题的解决方法
2013/11/20 Javascript
jQuery源码解读之hasClass()方法分析
2015/02/20 Javascript
jQuery.each使用详解
2015/07/07 Javascript
Bootstrap学习笔记之css样式设计(1)
2016/06/07 Javascript
AngularJS实现页面定时刷新
2017/03/14 Javascript
第一次记录Bootstrap table学习笔记(1)
2017/05/18 Javascript
nodejs Assert中equal(),strictEqual(),deepEqual(),strictDeepEqual()比较
2017/09/18 NodeJs
arcgis for js栅格图层叠加(Raster Layer)问题
2017/11/22 Javascript
原生JS无缝滑动轮播图
2019/10/22 Javascript
微信小程序轮播图swiper代码详解
2020/12/01 Javascript
python正则分组的应用
2013/11/10 Python
python 打印出所有的对象/模块的属性(实例代码)
2016/09/11 Python
Python做简单的字符串匹配详解
2017/03/21 Python
Python实现 版本号对比功能的实例代码
2019/04/18 Python
python 利用pyttsx3文字转语音过程详解
2019/09/25 Python
在pycharm中实现删除bookmark
2020/02/14 Python
将pytorch转成longtensor的简单方法
2020/02/18 Python
浅谈pytorch中的BN层的注意事项
2020/06/23 Python
比驿:全球酒店比价网
2018/06/20 全球购物
Myprotein意大利官网:欧洲第一运动营养品牌
2018/11/22 全球购物
美国巧克力喷泉品牌:Sephra
2019/05/05 全球购物
自荐书范文
2013/12/08 职场文书
火锅店创业计划书范文
2014/02/02 职场文书
白血病募捐倡议书
2014/05/14 职场文书
条幅标语大全
2014/06/20 职场文书
幼儿教师师德培训心得体会
2016/01/09 职场文书
《小蝌蚪找妈妈》教学反思
2016/02/23 职场文书
创业计划书之青年旅馆
2019/09/23 职场文书
抖音动画片,皮皮虾,《治愈系》动画在用这首REMIX作为背景音乐,Anak ,The last world with you完整版
2022/03/16 杂记