Javascript 动态多文本字段

Javascript 动态多文本字段,javascript,arrays,reactjs,object,redux,Javascript,Arrays,Reactjs,Object,Redux,我在reactjs中实现了动态多文本字段 当我通过单击add按钮添加新行时, 输入键文本字段和值文本字段, 单击+图标不添加行 我可以帮忙,这里是codesandbox 在state对象中创建“additionalFields”属性的深度副本似乎解决了这个问题 复制具有一层或多层其他引用值(对象、数组)的引用值时,我倾向于使用JSON.stringify()将其转换为JSON,然后使用JSON.parse()将其转换回对象。这将导致一个数组不指向状态对象中的原始数组。Lodash的cloneDe

我在reactjs中实现了动态多文本字段

当我通过单击
add
按钮添加新行时, 输入键文本字段和值文本字段, 单击
+
图标不添加行

我可以帮忙,这里是codesandbox

在state对象中创建“additionalFields”属性的深度副本似乎解决了这个问题

复制具有一层或多层其他引用值(对象、数组)的引用值时,我倾向于使用
JSON.stringify()
将其转换为JSON,然后使用
JSON.parse()
将其转换回对象。这将导致一个数组不指向状态对象中的原始数组。Lodash的
cloneDeep()
方法更具可读性,但对于香草JavaScript,您可以使用我的解决方案

handleValueChange = (event, row, i) => {
var newArray = JSON.parse(JSON.stringify([...this.state.additionalFields]));
newArray[row.id].value[i] = event.target.value;
this.setState({ additionalFields: newArray });
};