Чтобы изменить свойства в состоянии родительского компонента от дочернего компонента, вы можете отправить функцию в качестве Prop для дочернего компонента.
Родительский компонент:
class Parent extends React.Component {
// Parent state
this.state = {
someState: false
}
// This method will be sent to the child
handler = () => {
this.setState({ someState: true });
}
// Set the action property with the handler as value
render() {
return <Child action={this.handler} />
}
}
Дочерний компонент:
// onClick executes the handler function set by the parent component
const Child = ({ action }) => (
<Button onClick={action} />
);