react-父子组件传值-子传父

本文详细介绍了在React中如何实现子组件向父组件传递数据的过程。通过一个具体的示例,展示了如何在子组件中触发父组件的状态更新,实现数据的逆向流动。子组件通过调用父组件传递的回调函数,将自身状态或数据作为参数传回,完成子到父的数据传递。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

React-父子组件传值-子传父

1.直接上代码:

			class Children extends React.Component {
				constructor(props){
					super(props);
					this.state={
						msg:'我是子组件',
						pmsg:this.props.pmsg
					}
				}
				send(){
					this.props.handle(this.state.msg);   //利用父组件传进来的回调函数改变父组件内的state值,从而实现子到父组件的数据传递
				}
				render(){
					return (
						<div className='children'>
							<h1>{this.state.msg}</h1>
							<p>{this.state.pmsg}</p>
							<button onClick={(e)=>{this.send(e)}}>点击发送数据到父组件</button>
						</div>
					)
				}
			}
			
			class Parent extends React.Component {
				constructor(props){
					super(props);
					this.state={
						msg:'我是父组件的数据',
						cmsg:''
					}
				}
				changeMsg(data){
					this.setState({
						cmsg:data
					})
					console.log(data);
				}
				render(){
					return (
						<div className='parent'>
							<h1>{this.state.msg}</h1>
							<p>{this.state.cmsg}</p>
							<Children handle={(data)=>{this.changeMsg(data)}} pmsg={this.state.msg} />
						</div>
					)
				}
			}
			ReactDOM.render(
				<Parent />,
				document.getElementById('app')
			)

将父组件内的方法,通过子组件的自定义属性的方式传入,如上:handle={(data)={this.changeMsg(data)}}

在子组件中,通过在方法内使用this.props.handle(data);将子组件内的数据作为参数传入该回调函数,从而实现子传父的实现。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值