【发布时间】:2020-05-01 12:54:03
【问题描述】:
我正在尝试使用映射函数和扩展运算符更新嵌套数组中的状态,但我不明白如何获取键/值对中的键来选择嵌套对象。有一个箭头在有问题的部分的代码中。
export default class ControlPanel extends Component {
state = {
words:
[
{
word: "a",
id: 1,
column: 1,
synonymns: {
all:[],
selected:[],
noneFound: false
}
}
]
}
}
updateSynonymnState = (wordId, theSynonymns) => {
const { words } = this.state
const newWords = words.map(word => {
if(word.id == wordId){
return {...word, synonymns.all: theSynonymns} //<--- synonymns.all is throwing an error, but that is the key that i need.
} else {
return word
}
})
this.setState ({words: newWords})
}
我可以从一开始就映射同义词,但是我会丢失我需要选择正确单词的单词的 Id..
我如何在 word.map 函数中设置synonymns.all = theSynonymns,或者在映射父参数时我应该能够以不同的方式设置嵌套的键/值对吗?
【问题讨论】:
标签: reactjs