【发布时间】:2019-04-18 22:35:31
【问题描述】:
美好的一天!我有一个带有子数组的嵌套状态,我想知道 setState 的正确和最佳方法。
这是一个示例状态对象。
已编辑,忘了说lists 是array of objects。
this.state = {
lists:
[{
name: 'sampleList',
id: 15,
permission: {
canRead: true,
canWrite: false
}
}]
}
}
我用它来设置权限属性的状态,但状态没有更新。
this.setState({
...this.state, lists: {
...this.state.lists, key: [
...this.state.lists.key, permission : {
...this.state.lists.key.permission,
canRead: !this.state.lists.key.permission.canRead
}
]
}
});
我希望你能帮助我。谢谢!
【问题讨论】:
-
在 setState 中,您使用的是对象 {...this.state.list} 而不是 [...this.state.lists] 这是问题。
标签: javascript reactjs babeljs jsx