【发布时间】:2019-08-08 17:50:02
【问题描述】:
我正在使用 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 }));
}
渲染中的映射表
<tbody className="row">
{ this.state.isLoadingdane ? (
data2.map(user => {
const { IDA, Value } = user;
return (
<tr id={IDA}>
<td ><p>{IDA}</p></td>
<td >
<input id={IDA} type="text" className="form-control" size="1" name="wnio" onChange={this.ChangeWniosek} value={Value} ></input>
</td>
<td >
<button onClick={() => this.edit(user)} type="button" className="btn btn-light">Zapisz</button>
</td>
</tr>
);
Post 方法工作,更改保存在服务器上
【问题讨论】:
-
你能添加其余的代码吗?尤其是您输入的 onChange 处理程序。
-
您必须使用已编辑项目的新值更新 onChange 处理程序中的状态
标签: javascript reactjs input get axios