【发布时间】:2020-07-02 14:02:01
【问题描述】:
我想使用 filter() 从项目列表中删除一个项目。
删除项目的函数在父组件中,然后我在子组件中调用。
这里是父组件的功能:
deletePlayer = (id) => {
const teamPlayers = this.state.teamPlayers
teamPlayers.filter(i => i.idTeam !== id)
console.log('my players: ', teamPlayers);
}
我在props中传递了这个函数:
<//other props...
strNationality={player.strNationality}
deletePlayer={(id) => this.deletePlayer(id)}
/>
))
我从我的孩子那里得到的:
deletItem = (e, id) => {
console.log('mes propos player: ', this.props.idPlayer);
this.props.deletePlayer(id)
}
这就是我触发事件的方式:
<Button
onClick={ () => this.deletItem(this.props.idPlayer) }
className='button'
color='black'
type='submit'>
我得到了正确的 ID,但 filter() 从不过滤,它会找到我所有的对象。就好像他忽略了 !== id
我该怎么做?
【问题讨论】:
标签: javascript reactjs crud