详解各版本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 相关文章推荐
js模拟实现Array的sort方法
Dec 11 Javascript
javascript中的107个基础知识收集整理 推荐
Mar 29 Javascript
JQuery.ajax传递中文参数的解决方法 推荐
Mar 28 Javascript
js创建一个input数组并绑定click事件的方法
Jun 12 Javascript
jQuery的text()方法用法分析
Dec 20 Javascript
JS实现从连接中获取youtube的key实例
Jul 02 Javascript
JavaScript位置与大小(1)之正确理解和运用与尺寸大小相关的DOM属性
Dec 26 Javascript
AngularJS实现进度条功能示例
Jul 05 Javascript
轻松搞定jQuery+JSONP跨域请求的解决方案
Mar 06 jQuery
vue动态绑定class的几种常用方式小结
May 21 Javascript
详解vue-cli项目开发/生产环境代理实现跨域请求
Jul 23 Javascript
vue 在methods中调用mounted的实现操作
Aug 07 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
在smarty模板中使用PHP函数的方法
2011/04/23 PHP
php判断上传的Excel文件中是否有图片及PHPExcel库认识
2013/01/11 PHP
PHP中的日期时间处理利器实例(Carbon)
2017/06/09 PHP
javascript prototype原型操作笔记
2009/12/07 Javascript
滚动条变色 隐藏滚动条与双击网页自动滚屏显示代码
2009/12/28 Javascript
jQuery 创建Dom元素
2010/05/07 Javascript
jquery 删除cookie失效的解决方法
2013/11/12 Javascript
JavaScript实现彩虹文字效果的方法
2015/04/16 Javascript
响应式表格之固定表头的简单实现
2016/08/26 Javascript
浅谈js的ajax的异步和同步请求的问题
2016/10/07 Javascript
angularjs中使用ng-bind-html和ng-include的实例
2017/04/28 Javascript
微信小程序canvas写字板效果及实例
2017/06/15 Javascript
使用Bootstrap和Vue实现用户信息的编辑删除功能
2017/10/25 Javascript
vue2.0安装style/css loader的方法
2018/03/14 Javascript
Vue中的vue-resource示例详解
2018/11/02 Javascript
JS利用prototype给类添加方法操作详解
2019/06/21 Javascript
vue实现标签云效果的方法详解
2019/08/28 Javascript
如何在JavaScript中正确处理变量
2020/12/25 Javascript
Python判断文件或文件夹是否存在的三种方法
2017/07/27 Python
python机器学习案例教程——K最近邻算法的实现
2017/12/28 Python
Python Requests模拟登录实现图书馆座位自动预约
2018/04/27 Python
Python 中 function(#) (X)格式 和 (#)在Python3.*中的注意事项
2018/11/30 Python
Python将json文件写入ES数据库的方法
2019/04/10 Python
python读取文件指定行内容实例讲解
2020/03/02 Python
Python 存取npy格式数据实例
2020/07/01 Python
Python实现图片查找轮廓、多边形拟合、最小外接矩形代码
2020/07/14 Python
AmazeUi Tree(树形结构) 应用小结
2020/08/17 HTML / CSS
英国受欢迎的运动鞋和街头服装商店:Footasylum
2018/06/12 全球购物
编程实现去掉XML的重复结点
2014/05/28 面试题
施工安全协议书
2013/12/11 职场文书
园林资料员岗位职责
2013/12/30 职场文书
团结演讲稿范文
2014/05/23 职场文书
计算机专业自荐信
2015/03/05 职场文书
新店开张宣传语
2015/07/13 职场文书
关于军训的感想
2015/08/07 职场文书
Python中tqdm的使用和例子
2022/09/23 Python