在下面的代码中,我试图从点击他们名字旁边的删除按钮时最终将成为组织结构图的人中删除一个人。目前,没有任何反应。我最近来的是当点击任何一个删除按钮时全部5个人被删除,但我只希望单击删除谁的按钮。我觉得我正在制作更多的JS错误,而不是React错误。.setState():在按钮上点击一个对象数组过滤一个人点击
See the full code sandbox here.
任何帮助,将不胜感激,谢谢!
import React from "react";
import { Component } from "react";
const list = [
{
name: "Person 1",
phone: "123-4567",
itemId: 11
},
{
name: "Person 2",
phone: "123-4567",
itemId: 12
},
{
name: "Person 3",
phone: "123-4567",
itemId: 23
},
{
name: "Person 4",
phone: "123-4567",
itemId: 34
},
{
name: "Person 5",
phone: "123-4567",
itemId: 45
}
];
class Entry extends Component {
constructor(props) {
super(props);
this.state = {
list: list
};
this.handleClick = this.handleClick.bind(this);
}
handleClick(e) {
this.setState({
list: this.state.list.filter(function(person) {
return person !== e.target.value;
})
});
}
render() {
return (
<div>
{this.state.list.map(item =>
<tr key={item.itemId}>
<td>
{item.name}
</td>
<td>
{item.phone}
</td>
<td>
<a className="delete" onClick={this.handleClick} />
</td>
</tr>
)}
</div>
);
}
}
export default Entry;
你期待e.target.value是什么值? – Cruiser