【发布时间】:2019-04-04 00:59:27
【问题描述】:
我有这组数据
this.state = {
weeks: [
{
weekNumber: 1,
weights: []
},
{
weekNumber: 2,
weights: []
}
]
}
我想做的是创建一个新数组并将其设置为“权重”。我检查了其他类似这样的帖子: Set state of nested array
我假设我做了类似的事情。
编辑:另外,比如说我想更新每个星期的权重数组,我该怎么做?
【问题讨论】:
-
您是要在状态下创建一个名为“weights”的新条目还是创建一个名为“weights”的变量?
-
@CodySwann 我想我会创建一个新的数组变量并使用这个新的数组变量来更新状态“权重”
-
@Bpicks - 看看 react 的不变性助手——特别是更新方法。您可以创建一个新的状态对象,然后使用 setState 用更新后的状态更新您的整个状态。 reactjs.org/docs/update.html
-
@heyitsjhu 打败了我。这是最好的方法。否则,您必须使用扩展运算符进行一些讨厌的对象扩展
-
@CodySwann `@heyitsjhu 好吧,比如说我想更新两个星期的权重数组。我是否可以每周映射并使用不变性助手的更新方法更新状态?
标签: javascript arrays reactjs