我有这个类:
class Board {
this.state = {
lists : [{
id: 0,
title: 'To Do',
cards : [{id : 0}]
}]
}
我想在“lists”状态数组内部使用“cards”数组上的setState。以前,我的卡片数组在子组件中,但现在我已将其移至Board类中。这是我之前拥有的功能。
deleteCards(id){
this.setState({
cards: this.state.cards.filter(card => card.id !== id)
});
}
如何更改代码使其在cards嵌套在另一个数组中时也能正常工作?
我查看了以下帖子,但仍然无法解决:
id
与它所在列表的id
是相同的。您能否也将列表的id
提供给此函数?如果不能,该函数将不得不遍历每个列表,直到找到具有提供的id
的卡片。 - chrisbotsetState
中访问状态时,通常最佳实践是使用对先前状态的引用。此外,我建议避免使用concat
来改变list.card
数组,而是使用扩展运算符 (...
),像这样:cards: [...list.cards, {id: cID}]
。 - chrisbot