Someone too expert to explain me why "this" is linked to the App component (parent), according to me "this" is equal to the object that calls that method, in this case it would be "this.props" (this.props.parentCallback('something')) which makes no sense to me, I do not understand. I thought I understood "this" well, but I see that I didn't, I was overcome.
class App extends React.Component {
state = {
name: "",
};
handleCallback = (childData) => {
this.setState({ name: childData });
};
render() {
const { name } = this.state;
return (
<div>
<Child parentCallback={this.handleCallback} />
{name}
</div>
);
}
}
class Child extends React.Component {
onTrigger = (event) => {
console.log(this.props);
this.props.parentCallback(event.target.myname.value);
event.preventDefault();
};
render() {
return (
<div>
<form onSubmit={this.onTrigger}>
<input type="text" name="myname" placeholder="Enter Name" />
<br></br>
<br></br>
<input type="submit" value="Submit" />
<br></br>
<br></br>
</form>
</div>
);
}
}
ReactDOM.render(<App />, document.getElementById("app"));