Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/413.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 反应-Can';不要改变输入中的数字_Javascript_Reactjs_Input_Get_Axios - Fatal编程技术网

Javascript 反应-Can';不要改变输入中的数字

Javascript 反应-Can';不要改变输入中的数字,javascript,reactjs,input,get,axios,Javascript,Reactjs,Input,Get,Axios,我正在使用axios get使用API中的数据映射表。在表中,我有一个输入字段,其中的值来自axios数据,但当我输入时,该输入值不会改变。例如,如果输入中的数字是数据中的数字8,而输入中的类型5仍然是数字8 如何解锁输入字段 axios代码 axios .get("http://10.10.10.27/api?", {params : {rok : this.state.rok, idUchwaly : this.state.id}, headers: { 'Authorization'

我正在使用axios get使用API中的数据映射表。在表中,我有一个输入字段,其中的值来自axios数据,但当我输入时,该输入值不会改变。例如,如果输入中的数字是数据中的数字8,而输入中的类型5仍然是数字8

如何解锁输入字段

axios代码

axios
  .get("http://10.10.10.27/api?", {params : {rok : this.state.rok, idUchwaly : this.state.id}, headers: { 'Authorization' : 'Bearer '+ this.state.token }})
  .then(response =>
    response.data.map(data2 => ({
      IDA: `${data2.id}`,
      Value: `${data2.value}`,


    }))
  )
  .then(data2 => {
    if (data2==''){
      this.setState({ isLoadingdane: false });
    }
    else{
      this.setState({ data2, isLoadingdane: true});
    }
  })
  .catch(error => this.setState({ error }));
}

渲染中的映射表


{this.state.isLoadingdane(
data2.map(用户=>{
const{IDA,Value}=user;
返回(
{IDA}

this.edit(user)}type=“button”className=“btn btn light”>Zapisz
)
您需要从
数据2
数组中找到当前修改的对象,并用新值替换修改后的

输入值永远是数字8,因为您从data2对象获取输入值,该对象在更改时保持不变:

const {IDA, Value} = user;
<input id={IDA} type="text" className="form-control" size="1" name="wnio" onChange={this.ChangeWniosek} value={Value} ></input>```

让我知道这是否有效。

您可以添加其余代码吗?尤其是输入的onChange处理程序。您必须使用编辑项的新值更新onChange处理程序中的状态。这是一个错误,应该是“obj.value=e.target.value”,然后它就可以工作了!谢谢!
<input id={IDA} type="text" className="form-control" size="1" name="wnio" onChange={(e) => this.ChangeWniosek(e)} value={Value} ></input>
ChangeWniosek = (e) => {
  let { data2 } = this.state;
  data2 = data2.map(obj => {
    if (obj.IDA === e.target.id) {
      obj.Value = event.target.value
    }
    return obj;
  });
  this.setState({
    data2,
    Value: event.target.value
  });
}