Здравствуйте, имею подобную реализацию, однако она работает некорректно (удаляется не конкретный элемент в списке):
render() {
return (
<div className="container">
<div className="app">
<div className="top-container">
<div className="name">Todo List</div>
<InputArea changeState={this.changeState}/>
<input className="clear_button" type="button" value="Clear" onClick={this.handleClear}/>
</div>
<TodoList closed={this.handleClose} text={this.state.text}/>
</div>
</div>
)
}
handleClose = (index) => {
console.log(index);
this.setState({
text: [this.state.text.splice(index, 1)]
})
}
дочерний компонент:
render() {
return (
<div>
<ul className="todoList_container">
{this.props.text.map((text, i) => {
return <div key={i} className="li" >
<li>{text}</li>
<i onClick={()=> {this.props.closed(i)}} className="fas fa-times-circle close-btn"></i>
</div>
})}
</ul>
</div>
)
}