我有这个函数返回一个对象数组,每个对象代表一个粘性,我想要的是每次点击其中一个胶粘物时改变“内容”的值
handleStickyEdition = (index) => {
const { currentStage } = this.props
const stickies = currentStage.get('stickies')
const updatedStickies = [...stickies]
console.log(updatedStickies)
}
如果我console.log(updatedStickies[index].get('content'))
,我将获得我想要更改的对象的内容。例如name 3
。
如何用空字符串替换此content
?换句话说,如果我点击位置0中的对象,我怎样才能使name 3
等于''
答案 0 :(得分:1)
我建议使用这样的地图。
this.setState({
updatedStickies: this.state.updatedStickes.map(sticky => ({
...sticky
content: sticky.id === idOfStickyWeWantToUpdate ? "" : "content"
}))
});
我看到你正在阅读道具中的胶粘物,我建议在你的父组件中使用一个函数来运行上面的代码,如果需要你可以从你的子组件中调用它。