ReactJS:从父组件中的子组件触发事件
我有两个部分:1.父母2.孩子 在名为onChange()的子组件中有一个返回值的事件。 我想接收从父组件的componentDidMount()中的OnChange()返回的值 例如:ReactJS:从父组件中的子组件触发事件,reactjs,Reactjs,我有两个部分:1.父母2.孩子 在名为onChange()的子组件中有一个返回值的事件。 我想接收从父组件的componentDidMount()中的OnChange()返回的值 例如: class Parent extends PureComponent { componentDidMount() { let value = CHILD.onChange(); //triggered when ever onChange() } render(){ return(
class Parent extends PureComponent {
componentDidMount() {
let value = CHILD.onChange(); //triggered when ever onChange()
}
render(){
return(
<Child />
)
}
}
const Child = () => {
const onChange = () => {
const value = 1
return value;
};
}
类父级扩展PureComponent{
componentDidMount(){
让value=CHILD.onChange();//在onChange()时触发
}
render(){
返回(
)
}
}
常量Child=()=>{
const onChange=()=>{
常数值=1
返回值;
};
}
类父级扩展PureComponent{
handleChildChange=值=>{
//把你的东西做得有价值,传递给州政府,如果你愿意的话,从那里拿走
}
render(){
返回(
)
}
}
const Child=(道具)=>{
const onChange=()=>{
值=1
道具.手柄变化(值);
}
};
}
您需要在父组件中定义onChange()
方法,然后在子组件中将其作为prop
传递并在那里执行。该值可以保存在父组件的状态中。您应该在父组件上定义onChange处理程序,并将其作为道具传递给子组件。在子组件中,您接收处理程序并将其设置为适当的事件。
class Parent extends PureComponent {
handleChildChange = value => {
//Do your stuff with value, pass it to the state and take it from there if you like
}
render(){
return(
<Child handleChange={this.handleChildChange} />
)
}
}
const Child = (props) => {
const onChange = () => {
value = 1
props.handleChange(value);
}
};
}