详解各版本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 相关文章推荐
动感效果的TAB选项卡jquery 插件
Jul 09 Javascript
js简单网速测试方法完整实例
Dec 15 Javascript
JS弹出对话框实现方法(三种方式)
Dec 18 Javascript
JavaScript的设计模式经典之代理模式
Feb 24 Javascript
React组件之间的通信的实例代码
Jun 27 Javascript
Node.JS中快速扫描端口并发现局域网内的Web服务器地址(80)
Sep 18 Javascript
基于Bootstrap实现城市三级联动
Nov 23 Javascript
使用mock.js随机数据和使用express输出json接口的实现方法
Jan 07 Javascript
vue组件数据传递、父子组件数据获取,slot,router路由功能示例
Mar 19 Javascript
详解vue v-model
Aug 31 Javascript
Vue-cli打包后如何本地查看的操作
Sep 02 Javascript
node.js如何根据URL返回指定的图片详解
Oct 21 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
Drupal 添加模块出现莫名其妙的错误的解决方法(往往出现在模块较多时)
2011/04/18 PHP
php中利用explode函数分割字符串到数组
2014/02/08 PHP
php根据一个给定范围和步进生成数组的方法
2015/06/19 PHP
基于PHP生成简单的验证码
2016/06/01 PHP
常用PHP封装分页工具类
2017/01/14 PHP
thinkphp5实现无限级分类
2019/02/18 PHP
Thinkphp整合阿里云OSS图片上传实例代码
2019/04/28 PHP
Laravel框架学习笔记之批量更新数据功能
2019/05/30 PHP
PHP使用观察者模式处理异常信息的方法详解
2019/09/24 PHP
PHP 实现重载
2021/03/09 PHP
可缩放Reloaded-一个针对可缩放元素的复用组件
2007/03/10 Javascript
node.js中的http.response.addTrailers方法使用说明
2014/12/14 Javascript
javascript面向对象之访问对象属性的两种方式分析
2015/01/13 Javascript
浅谈JavaScript中的Math.atan()方法的使用
2015/06/14 Javascript
用JS动态设置CSS样式常见方法小结(推荐)
2016/11/10 Javascript
EasyUI折叠表格层次显示detailview详解及实例
2016/12/28 Javascript
通过jsonp获取json数据实现AJAX跨域请求
2017/01/22 Javascript
微信小程序左右滑动切换页面详解及实例代码
2017/02/28 Javascript
本地存储localStorage用法详解
2017/07/31 Javascript
js中less常用的方法小结
2017/08/09 Javascript
深入浅析Vue不同场景下组件间的数据交流
2017/08/15 Javascript
vue 音乐App QQ音乐搜索列表最新接口跨域设置方法
2018/09/25 Javascript
JavaScript实现音乐导航效果
2020/11/19 Javascript
Python二叉搜索树与双向链表转换实现方法
2016/04/29 Python
python 实现求解字符串集的最长公共前缀方法
2018/07/20 Python
windows下python 3.6.4安装配置图文教程
2018/08/21 Python
Python 访问限制 private public的详细介绍
2018/10/16 Python
pow在python中的含义及用法
2019/07/11 Python
英国家喻户晓的高街品牌:River Island
2017/11/28 全球购物
伦敦新晋轻奢耳饰潮牌:Tada & Toy
2020/05/25 全球购物
餐饮业员工工作决心书
2014/03/11 职场文书
保洁公司服务承诺书
2014/05/28 职场文书
学习三严三实对照检查材料思想汇报
2014/09/22 职场文书
CSS 圆形进度栏
2021/04/06 HTML / CSS
教你怎么用Python实现多路径迷宫
2021/04/29 Python
python 使用tkinter与messagebox写界面和弹窗
2022/03/20 Python