Arrays 如何在React状态下创建具有不同标记的对象数组
我正在尝试使用处于React组件状态的相同对象创建一个数组(Arrays 如何在React状态下创建具有不同标记的对象数组,arrays,reactjs,state,Arrays,Reactjs,State,我正在尝试使用处于React组件状态的相同对象创建一个数组(todos)。对象应该由活动:false、值及其索引组成 我试过这个: this.state = { todos:Array(15).fill({active:false},{idx:???}) } 我写什么作为索引 您可以将数组中的索引作为idx写入对象: Array(15).fill({ active: false }).map((i, k) => ({ ...i, ...{ idx: k }})); 但您需要
todos
)。对象应该由活动:false、
值及其索引组成
我试过这个:
this.state = {
todos:Array(15).fill({active:false},{idx:???})
}
我写什么作为索引 您可以将数组中的索引作为
idx
写入对象:
Array(15).fill({ active: false }).map((i, k) => ({ ...i, ...{ idx: k }}));
但您需要使用再次迭代抛出数组,并创建一个包含索引的新数组。您可以将数组中的索引作为
idx
写入对象:
Array(15).fill({ active: false }).map((i, k) => ({ ...i, ...{ idx: k }}));
但是您需要使用来再次迭代抛出数组并创建一个带有索引的新数组。您可以跳过
。通过将array(15)
扩展到数组中填充,然后您可以只.map
。但是,如果已经有了要填充的值,为什么要先创建一个空数组呢
[...Array(15)].map((_, idx) => {
return {active: false, idx}
})
通过将数组(15)
展开到一个数组中,可以跳过。填充,然后只需。映射
。但是,如果已经有了要填充的值,为什么要先创建一个空数组呢
[...Array(15)].map((_, idx) => {
return {active: false, idx}
})
哦,我正好有15个待办事项,只需要更新他们的状态。所以我想我在构造函数中创建它们,然后根据它们的索引更新它们的状态。对吗?犯了语法错误。以上工作。只要你的实现有效,那就一定要使用它。哦,我正好有15个待办事项,只需要更新它们的状态。所以我想我在构造函数中创建它们,然后根据它们的索引更新它们的状态。对吗?犯了语法错误。以上工作。只要您的实现工作正常,就一定要使用它。