React 子组件向父组件传值的方法
程序员文章站
2022-05-14 19:56:19
本文介绍了react 子组件向父组件传值的方法,分享给大家
子组件需要控制自己的 state, 然后告诉父组件自己的state,通过props调用父组件中用来控制st...
本文介绍了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变化,达到在父组件中展示子组件产生的变化。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。