react父子元件傳值
阿新 • • 發佈:2022-03-16
父元件給子元件傳值
class類元件,父元件在子元件上寫入屬性,子元件通過this.props.屬性名獲取值
函式式元件,父元件在子元件上寫入屬性,子元件需要把props作為元件引數才能使用props
子元件給父元件傳值
通過傳遞迴調函式的方式,父元件給子元件傳一個回撥函式(可帶引數),子元件通過this.props.回撥函式名,通過呼叫回撥函式,傳入引數來傳值
父元件
// import React, { useState } from 'react' // import A from './A' // export default function F() { // const [list, setList] = useState([1, 2, 3])// return ( // <div> // <A title='rql' list={list}></A> // </div> // ) // } import React, { Component } from 'react' import A from './A' export default class F extends Component { state = { name: 'rql' } render() { return (<div> <A title="123" event={(value) => { this.setState({ name: value }); }}></A> {this.state.name} </div> ) } }
子元件
// import React from 'react'// export default function A(props) { // let { title, list } = props // return ( // <div> // {title}{console.log(list)} // </div> // ) // } import React, { Component } from 'react' export default class A extends Component { render() { return ( <div> {this.props.title} <button onClick={() => { this.props.event('子元件給我父元件傳的值') }}>按鈕</button> </div> ) } }