1.概念
说明:React中子组件向父组件传递数据通常涉及回调函数和状态提升等方法。
2.代码实现
2.1绑定事件
说明:父组件绑定自定义事件
<Son onGetSonMsg={getMsg}></Son>
2.2接受事件
说明:子组件接受父组件的自定义事件名称。按钮绑定点击事件触发父组件传递过来的数据。
function Son({onGetSonMsg}) {
const sonMsg='争做天下第一流'return <div><div>Writer</div>
<button onClick={()=>onGetSonMsg(sonMsg)}>reply</button></div>;
}
2.3接受参数
说明:msg被初始化为一个空字符串。然后定义了一个函数getMsg,这个函数接收一个参数msg,并使用setMsg函数将msg的值设置为传入的参数值。
function App() {const [msg,setMsg]=useState('')const getMsg=(msg)=> setMsg(msg);return (<div><div>少年增许凌云志, {msg}</div><Son onGetSonMsg={getMsg}></Son></div>);
}
3.源代码
import { useState } from "react";// 子传父
function Son({onGetSonMsg}) {
const sonMsg='争做天下第一流'return <div><div>Writer</div>
<button onClick={()=>onGetSonMsg(sonMsg)}>reply</button></div>;
}
function App() {const [msg,setMsg]=useState('')const getMsg=(msg)=> setMsg(msg);return (<div><div>少年增许凌云志, {msg}</div><Son onGetSonMsg={getMsg}></Son></div>);
}export default App;