详解各版本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中获取元素索引的函数
Sep 10 Javascript
js清理Word格式示例代码
Feb 13 Javascript
jQuery操作select下拉框的text值和value值的方法
May 31 Javascript
javascript实现十六进制颜色值(HEX)和RGB格式相互转换
Jun 20 Javascript
node.js中的fs.lchmod方法使用说明
Dec 16 Javascript
JavaScript动态插入CSS的方法
Dec 10 Javascript
JavaScript检测原始值、引用值、属性
Jun 20 Javascript
详解react使用react-bootstrap当轮子造车
Aug 15 Javascript
JS点击图片弹出文件选择框并覆盖原图功能的实现代码
Aug 25 Javascript
详解封装基础的angular4的request请求方法
Jun 05 Javascript
详解微信小程序input标签正则初体验
Aug 18 Javascript
微信小程序使用蓝牙小插件
Sep 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
php is_file()和is_dir()用于遍历目录时用法注意事项
2010/03/02 PHP
ThinkPHP3.1之D方法实例详解
2014/06/20 PHP
PHP实现将浏览历史页面网址保存到cookie的方法
2015/01/26 PHP
PHP实现算式验证码和汉字验证码实例
2015/03/09 PHP
php从数据库中读取特定的行(实例)
2017/06/02 PHP
Yii 2中的load()和save()示例详解
2017/08/03 PHP
phpStudy配置多站点多域名和多端口的方法
2017/09/01 PHP
js 格式化时间日期函数小结
2010/03/20 Javascript
jquery DOM操作 基于命令改变页面
2010/05/06 Javascript
jquery 表格的增行删行实现思路
2013/03/21 Javascript
JavaScript常用全局属性与方法记录积累
2013/07/03 Javascript
JQuery的Ajax中Post方法传递中文出现乱码的解决方法
2014/10/21 Javascript
jQuery+CSS实现的网页二级下滑菜单效果
2015/08/25 Javascript
JavaScript中用let语句声明作用域的用法讲解
2016/05/20 Javascript
详解微信小程序审核不通过的解决方法
2018/01/17 Javascript
JS使用正则表达式判断输入框失去焦点事件
2019/10/16 Javascript
Bootstrap简单实用的表单验证插件BootstrapValidator用法实例详解
2020/03/29 Javascript
python错误:AttributeError: 'module' object has no attribute 'setdefaultencoding'问题的解决方法
2014/08/22 Python
Python中函数的用法实例教程
2014/09/08 Python
python+pandas分析nginx日志的实例
2018/04/28 Python
对python csv模块配置分隔符和引用符详解
2018/12/12 Python
详解Python函数式编程—高阶函数
2019/03/29 Python
详解Django将秒转换为xx天xx时xx分
2019/09/27 Python
python的help函数如何使用
2020/06/11 Python
浅谈tensorflow使用张量时的一些注意点tf.concat,tf.reshape,tf.stack
2020/06/23 Python
浅谈keras使用预训练模型vgg16分类,损失和准确度不变
2020/07/02 Python
详解HTML5 LocalStorage 本地存储
2016/12/23 HTML / CSS
详解android与HTML混合开发总结
2018/06/06 HTML / CSS
耐克巴西官方网站:Nike巴西
2016/08/14 全球购物
美国汽车交易网站:Edmunds
2016/08/17 全球购物
GAP美国官网:美国休闲时尚品牌
2016/08/26 全球购物
印尼最大的在线购物网站:MatahariMall.com
2016/08/26 全球购物
贸易经济专业自荐书
2014/06/29 职场文书
党员群众路线对照检查材料思想汇报
2014/09/17 职场文书
先进教师事迹材料
2014/12/16 职场文书
2015年林业工作总结
2015/05/14 职场文书