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
如何处理onChange-ReactJs?里面的细节无法解释问题_Reactjs_Frontend_User Input - Fatal编程技术网

如何处理onChange-ReactJs?里面的细节无法解释问题

如何处理onChange-ReactJs?里面的细节无法解释问题,reactjs,frontend,user-input,Reactjs,Frontend,User Input,嗨,我在react用户输入文本中遇到问题。我有一个项目列表和一个输入文本。 当我在第一个输入框内键入时,所有输入框都会更改。如何处理这个问题 示例代码 handleEditChange(event) { event.preventDefault(); console.log(event.target.name) console.log(event.target.value) this.setState({ [

嗨,我在react用户输入文本中遇到问题。我有一个项目列表和一个输入文本。 当我在第一个输入框内键入时,所有输入框都会更改。如何处理这个问题

示例代码

handleEditChange(event) {
        event.preventDefault();
        console.log(event.target.name)
        console.log(event.target.value)
        this.setState({
            [event.target.name]: event.target.value
        });
    };


{items.map(item=> (
  <input type="text" class="form-control bg-light" placeholder="Reply" name="reply" value= 
  {this.state.reply} onChange={this.handleChange} />
))}
handleEditChange(事件){
event.preventDefault();
console.log(event.target.name)
console.log(event.target.value)
这是我的国家({
[event.target.name]:event.target.value
});
};
{items.map(item=>(
))}
因此,输入框将基于循环重复,例如,它将是3个输入框。图片样本


我怎样才能防止这种情况?感谢您的帮助

您需要为每个输入值设置单独的状态变量。您当前正在遍历项目,并为每个项目呈现相同的输入,相同的值为
this.state.reply


根据您所附的图片,您可以将每个输入包装在一个
讨论
组件中,该组件一次只处理一个输入。

您可以使用
或类似的东西吗?

我怎么做,当我更改名称={“reply”+item.id}时,我的设置状态有问题