首页 > 编程 > JavaScript > 正文

React 子组件向父组件传值的方法

2019-11-19 16:00:27
字体:
来源:转载
供稿:网友

本文介绍了React 子组件向父组件传值的方法,分享给大家

子组件需要控制自己的 state, 然后告诉父组件自己的state,通过props调用父组件中用来控制state的函数,在父组件中展示子组件的state变化。

/***实现在输入框输入邮箱时,在div中即时显示输入内容***/<body>  <div id="test"></div></body>//子组件var Child = React.createClass({  render: function(){    return (      <div>        邮箱:<input onChange={this.props.handleEmail}/>      </div>    )  }});//父组件var Parent = React.createClass({  getInitialState: function(){    return {      email: ''    }  },  handleEmail: function(event){    this.setState({email: event.target.value});  },  render: function(){    return (      <div>        <div>邮箱:{this.state.email}</div>        <Child name="email" handleEmail={this.handleEmail.bind(this)}/>      </div>    )  }});React.render( <Parent />, document.getElementById('test'));

原理:

依赖 props 来传递事件的引用,并通过回调的方式来实现的,这样实现不是特别好,但在没有任何工具的情况下是一种简单的实现方式。

分析:

React中当state发生改变时,组件才会update。在父组件中设定state的初始值以及处理该state的函数,同时将函数名通过以props属性值的形式传入子组件,子组件通过调用父组件的函数,进而引起state变化,达到在父组件中展示子组件产生的变化。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持武林网。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表