I need to remove one row data from array. I don't know how to pass the index of this row from child to parent. Below is my code: App.js
state = {
courses: [{course:'' }]
}
onDelete(index){
this.setState((prevState) => ({
courses: prevState.courses.filter((_, i) => i !== index)
}));
}
render() {
const courses = this.state.courses.map((course, i) => {
return (
<ClassItem index={i} onDelete={this.onDelete(i)} />
);
});
return (
<div>
{courses}
</div>
);
}
Child component:
class ClassItem extends Component {
onDelet(index){
this.props.onDelete(index);
}
render() {
return (
<tr>
<td><input type="text" placeholder="Course Name" ></input></td>
<td>
<button onClick={this.onDelete} /></td>
</tr>
);
}
}
export default ClassItem;