【问题标题】:Generate objects with dynamic "key" using spread operators使用扩展运算符生成具有动态“键”的对象
【发布时间】:2025-11-24 15:20:05
【问题描述】:

我想生成一个对象,其中键是映射数据的索引值,如下面的代码所示

{data.map(({ quest, answers }, index) => {
                  <Radio.Group
                    name={index}
                    defaultValue={def}
                    onChange={(value) => {
                    setVal({...(val), index: JSON.stringify(value)}  )
                      
                    }}
                  >
                    {answers.map((ans, key) => {
                      return (
                        <Radio value={key + 1}>
                          {ans}
                        </Radio>
                      );
                    })}
                  </Radio.Group>
})}

所以“索引”在这一行

setVal({...(val), index: JSON.stringify(value)} )

应该来自这一行

{data.map(({ quest, answers }, index) =&gt; {

问题是上面的代码将索引值返回为字符串“index”,而不是我正在使用的映射数据中的索引值

【问题讨论】:

  • 说得有道理,也许可以向我们展示值对象的样子?

标签: javascript arrays reactjs object react-hooks


【解决方案1】:

像这样使用它:-

setVal({...(val), [index]: JSON.stringify(value)} )

【讨论】: