由于react-router 文档都是英文的,并且国内的文档相对版本较低,并且各个版本都是有区别的,导致在项目中遇到很多问题,下面是我在项目中的解决方案,以及路由的二次封装,希望看到的小伙伴们有所收获。
/** * Created by suiyantao on 16/7/27. */ /** * Created by suiyantao on 16/7/11. * 路由方法重构 * 若在类中引用 首先将此类import类中 然后使用mixins 将其混入即可 */ let React = require('react') let contextTypes= { contextTypes: { router: React.PropTypes.object.isRequired }, pushAndDate:function (data) {//跳转并传数据 this.context.router.push({ pathname: data.pathname, query: data.query }) }, pushOnly:function (data) {//跳转 this.context.router.push({ pathname: data.pathname }) }, replaceAndDate:function (data) {//重定向并传数据 this.context.router.replace({ pathname: data.pathname, query: data.query }) }, replaceOnly:function (data) {//重定向 this.context.router.replace({ pathname: data.pathname }) }, goBack:function(){ this.context.router.goBack() } } export default contextTypes