react组件之间传值

前言

          在做项目的过程中组件之间不可避免的要进行传值的操作, 本人写react也已经写了一年多了,现在总结一下react组件之间的传值方式,希望能为您带来帮助.

传值方式

          1.父子组件之间传值

            1.在父组件中需要引入子组件, 使用的时候跟标签的写法一样,父组件把要传的值写到子组件里,子组件通过this.props.name来获取父组件传递过来的值,

             2.子组件传值给父组件: 父组件可以将方法传递给子组件然后通过子组件通过传递过来的方法传值

            例如:

            父组件:

import React, {useState} from 'react';
import PersonHead from './component/PersonHead';

export default class PaymentDetail extends React.Component {
	constructor(props) {
		super(props);
		this.state = {
			headData:'tets',
		}
        this.headDataMethod=this.headDataMethod.bind(this);
	}
    headDataMethod=(data)=>{
        console.log(data)
    }
	render() {
		return (
			<div>
			    <PersonHead
			    headData={this.state.headData}
                headDataMethod={this.headDataMethod}
				/>
			</div>
		)
	}
}

       子组件:

          

import React, {useState} from 'react';
import {
	Button
} from "antd";
import moment from 'moment';

// 意向方案详情个人信息头部
export default class PersonHead extends React.Component {
	constructor(props) {
		super(props);
	}
	render() {
		let statusData = this.props.status;
		let statusText='';
		return (
			<div className="personHeadStyle">
				<div>
					<span className='personalDetail'>{this.props.headData}</span>
				</div>
		        <Button onCLick={()=>this.props.headDataMethod('123')}>
                </Button>

			</div>
		)
	}
}

 2.兄弟组件之间传值

     兄弟组件之间传值有三种方式

     1.通过一个中间组件,例如一个子组件传给父组件,再由父组件传递给另外一个子组件,不过这种只适用于结构简单的,如果隔了很多层级的话不推荐使用

      2.使用redux,可以参考下面链接:

      https://www.jianshu.com/p/5726bb042bda

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值