Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 我想在this.props.onChange中保存两个值,但只保存最后一个值_Javascript_Reactjs - Fatal编程技术网

Javascript 我想在this.props.onChange中保存两个值,但只保存最后一个值

Javascript 我想在this.props.onChange中保存两个值,但只保存最后一个值,javascript,reactjs,Javascript,Reactjs,我使用的是Ant.Design中的一个表,它有两列输入。。我想保存这两个输入值,但只保存最后一个 我的专栏: <Column title="Wanted" className="text-center" render={this.renderInput('Wanted')} /> <Column title="Offered" className="text-center" render={this.renderInput('Offered')} /&

我使用的是Ant.Design中的一个表,它有两列输入。。我想保存这两个输入值,但只保存最后一个

我的专栏:

<Column
  title="Wanted"
  className="text-center"
  render={this.renderInput('Wanted')}
/>

<Column
  title="Offered"
  className="text-center"
  render={this.renderInput('Offered')}
/>
我的控制台返回此:

但我需要这样的东西:

salario-direto:
id: "Wanted"
value: "1"
id: "Offered"
value: "2"

或者保存两个值,但以这种方式只保存最后一个值。

您正在覆盖中的值

this.props.onChange(
    {
      ...this.props.value,
      [name]: {
        id: id,
        value: value
      }
    }
  );
因为两个ITEN都有相同的名称。
当您使用
[name]
时,您将覆盖名称为
salario direto

如果你想要这样的东西

salario-direto:
id: "Wanted"
value: "1"
id: "Offered"
value: "2"
您需要使用数组来存储它。
我不确定您需要如何发送数据,但我认为是这样的

salario-direto: [
    {
        id: "Wanted"
        value: "1"
    },
    {
        id: "Offered"
        value: "2"
    }
]
如果这是您需要的情况,则在
onChange
上,您需要执行以下操作:

this.props.onChange(
    {
      [name]: this.props.value[name].concat({
        id: id,
        value: value
      })
    }
  );

是的,我需要像你写的一样的东西
…这个.props.value中有什么?另一个是salario direto
还是更多信息?我有salario direto谢谢,你救了我的命!
salario-direto: [
    {
        id: "Wanted"
        value: "1"
    },
    {
        id: "Offered"
        value: "2"
    }
]
this.props.onChange(
    {
      [name]: this.props.value[name].concat({
        id: id,
        value: value
      })
    }
  );