React子组件给父组件传值

React中是通过props来传递数据的

父组件给子组件传递数据,直接用属性名传递,子组件通过props获取父组件传递过来的值

//父组件
import Child from '../Child/index'

const Parent = () => {

    return(
        <div>
            <Child
                title='测试组件' 
            />
        </div>
    )
}

export default Parent
//子组件
const Child = (props) => {
    console.log(props.title,'title')

    return(
        <div>
            子组件
        </div>
    )
}

export default Child

那么子组件如何传递值给父组件呢?
父组件将一个方法赋值给一个属性传递给子组件,子组件在触发自身变化函数中调用父组件传递过来的属性并传值,父组件即可在自己的函数中打印出子组件传递过来的值

//父组件
import Child from '../Child/index'

const Parent = () => {

    const onClick = (value) => {
        console.log(value,'点击了')
    }

    return(
        <div style={{background:'#fff',height:'500px',width:'500px'}}>
            <Child
                title='测试组件' 
                click={onClick}
            />
        </div>
    )
}

export default Parent
//子组件
const Child = (props) => {
    console.log(props.title,'title')
    
    const handleClick = (value) => {
        props.click(value)
    }

    return(
        <div style={{background:'red',height:'200px',width:'200px'}} onClick={()=>{handleClick(1)}}>
            子组件
        </div>
    )
}

export default Child

你可能感兴趣的:(React,前端,react)