我是新来的反应者,现在在尝试将输入框的值推入数组时遇到了问题。如果您能帮助我,我将不胜感激。
通常来说,我想将多个输入框的输入值保存到数组中。所有输入框都调用相同的onChange函数(由于输入框是由地图生成的,因此必须使用相同的onChange函数)。
这是我的密码。
highest_value = max(values)
lowest_value = min(values)
例如,如果两个输入框的输入为“是”,“否”,则SCAnswerGroup的期望值为[“是”,“否”]。但是,我得到的是[“ YYeYesN”]。我认为每个字母更改都会保存到数组中,但最后一个字母会保存。您能帮我得到预期的结果吗?
非常感谢您!
答案 0 :(得分:1)
您可以将另一个参数索引传递给handleChange
函数,然后在函数中更改数组中的索引
handleChange(event, i){
this.setState({SCAnswer: event.target.value});
const SCAnswerGroup = this.state.SCAnswerGroup;
SCAnswerGroup[i] = event.target.value;
this.setState({SCAnswerGroup});
}
// in the render method
<input onChange={(event) => this.handleChange(event, i)} />