react-router JS 控制路由跳转实例


Posted in Javascript onJune 15, 2017

Link组件用于正常的用户点击跳转,但是有时还需要表单跳转、点击按钮跳转等操作。这些情况怎么跟React Router对接呢?
下面是一个表单。

<form onSubmit={this.handleSubmit}>
 <input type="text" placeholder="userName"/>
 <input type="text" placeholder="repo"/>
 <button type="submit">Go</button>
</form>

第一种方法是使用browserHistory.push

import { browserHistory } from 'react-router'

// ...
 handleSubmit(event) {
  event.preventDefault()
  const userName = event.target.elements[0].value
  const repo = event.target.elements[1].value
  const path = `/repos/${userName}/${repo}`
  browserHistory.push(path)
 },

第二种方法是使用context对象。

export default React.createClass({

 // ask for `router` from context
 contextTypes: {
  router: React.PropTypes.object
 },

 handleSubmit(event) {
  // ...
  this.context.router.push(path)
 },
})

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
简单的无缝滚动程序-仅几行代码
May 08 Javascript
javascript 字符串连接的性能问题(多浏览器)
Nov 18 Javascript
Javascript typeof 用法
Dec 28 Javascript
jquery pagination插件实现无刷新分页代码
Oct 13 Javascript
javascript OFFICE控件测试代码
Dec 08 Javascript
jQuery中empty()方法用法实例
Jan 16 Javascript
jquery分页插件jquery.pagination.js使用方法解析
Apr 01 Javascript
JS实现根据用户输入分钟进行倒计时功能
Nov 14 Javascript
Javascript中的prototype与继承
Feb 06 Javascript
原生JS实现旋转轮播图+文字内容切换效果【附源码】
Sep 29 Javascript
JS highcharts实现动态曲线代码示例
Oct 16 Javascript
10分钟学会js处理json的常用方法
Dec 06 Javascript
Vue路由跳转问题记录详解
Jun 15 #Javascript
JS奇技之利用scroll来监听resize详解
Jun 15 #Javascript
package.json文件配置详解
Jun 15 #Javascript
一次围绕setTimeout的前端面试经验分享
Jun 15 #Javascript
利用JS对iframe父子(内外)页面进行操作的方法教程
Jun 15 #Javascript
使用Require.js封装原生js轮播图的实现代码
Jun 15 #Javascript
JavaScript实现选中文字提示新浪微博分享效果
Jun 15 #Javascript
You might like
一次编写,随处运行
2006/10/09 PHP
php 什么是PEAR?
2009/03/19 PHP
PHP入门教程之操作符与控制结构流程详解
2016/09/09 PHP
全面解析PHP面向对象的三大特征
2017/06/10 PHP
FireFox与IE 下js兼容触发click事件的代码
2008/11/20 Javascript
jquery 笔记 事件
2011/11/02 Javascript
现如今最流行的JavaScript代码规范
2014/03/08 Javascript
jQuery对象初始化的传参方式
2015/02/26 Javascript
jQuery实现可用于博客的动态滑动菜单完整实例
2015/09/17 Javascript
React.js入门学习第一篇
2016/03/30 Javascript
浅谈window.onbeforeunload() 事件调用ajax
2016/06/29 Javascript
jQuery-mobile事件监听与用法详解
2016/11/23 Javascript
利用prop-types第三方库对组件的props中的变量进行类型检测
2017/05/02 Javascript
JavaScript插件Tab选项卡效果
2017/11/14 Javascript
解决layui 复选框等内置控件不显示的问题
2018/08/14 Javascript
layer.open关闭父窗口 以及调用父页面的方法
2018/08/17 Javascript
微信小程序人脸识别功能代码实例
2019/05/07 Javascript
详解vue beforeEach 死循环问题解决方法
2020/02/25 Javascript
[02:28]DOTA2 2015国际邀请赛中国区预选赛首日现场百态
2015/05/26 DOTA
Python中用函数作为返回值和实现闭包的教程
2015/04/27 Python
python实现linux下使用xcopy的方法
2015/06/28 Python
Python利用带权重随机数解决抽奖和游戏爆装备问题
2016/06/16 Python
python3制作捧腹网段子页爬虫
2017/02/12 Python
对变量赋值的理解--Pyton中让两个值互换的实现方法
2017/11/29 Python
python读取csv和txt数据转换成向量的实例
2019/02/12 Python
使用IDLE的Python shell窗口实例详解
2019/11/19 Python
django使用graphql的实例
2020/09/02 Python
汽车技术服务英文求职信范文
2014/01/02 职场文书
企业新年寄语
2014/04/04 职场文书
干部个人考察材料
2014/12/24 职场文书
手机销售员岗位职责
2015/04/11 职场文书
2015年中学校长工作总结
2015/05/19 职场文书
2019秋季运动会口号
2019/06/25 职场文书
spring项目中切面及AOP的使用方法
2021/06/26 Java/Android
python自动化操作之动态验证码、滑动验证码的降噪和识别
2021/08/30 Python
Python语言内置数据类型
2022/02/24 Python