react.js单页面跳转

      react.js用js的方式实现页面跳转暂时收录了两种方式。首先路由跳转需由父组件用router={history}方法 将路由信息传递给子组件,而后在子组件绑定点击事件,

   this.props.history.push('/...');

      从而实现js控制页面跳转。
方法一:在同一个组件中,添加绑定事件:

<Button onClick={this.routePush} router={history}></Button>

routePush(){
    this.props.history.push('/...');
}

其中很重要的是:

 constructor (props) {
    super(props);
    //关键就是这里,把要使用this的函数  在构造函数中用bind方法传入this
    this.routePush = this.routePush.bind(this);
}

方法二:在同一组件中,通过路由重定向Redirect进行跳转;

//引入Redirect 
import { Redirect } from 'react-router-dom';
//constructor中初始化字段redirect:false
this.state = {
        redirect:false
    };
//点击事件,改变redirect,实现render路由重定向,
this.setState({ redirect: true });
//render()内重定向页面路由
if (this.state.redirect){
    return <Redirect push to="/Protocols" />;
}

备注:这种方式直接重定向了原来的路由,虽然实现了跳转,但具体是否有其他问题还不确定,暂时未深入了解。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,916评论 25 709
  • 函数是面向过程的,函数的调用不需要主体,而方法是属于对象的,调用方法需要一个主体-即对象。 npm install...
    Gukson666阅读 481评论 0 3
  • 参考用书:python 编程 从入门到实践 使用input( ) 函数 while 循环 简单的while循环 使...
    小郑的学习笔记阅读 1,439评论 0 0
  • 昨晚,李修民在深圳工作的儿子李阳联系说,今年要带女朋友回家过年。 1 李阳今年三十岁,沒结婚这件事让李修民在村里无...
    桔子的子阅读 418评论 2 6
  • 非常开心的一天。 我和雯雯居然在没有商量的情况下一起来到了青岛。当我告诉她我在青岛,而她满怀喜悦的告诉我她昨天也来...
    Iris苑苑阅读 191评论 0 0