【发布时间】:2018-07-17 21:46:42
【问题描述】:
我正在尝试使用 React 和 react-select 进行多个选择输入。
如何管理具有多种状态的元素?
我使用循环(地图)制作元素,然后我如何确定哪个值将成为 value prop 的下一个值?
如何以某种方式将我从 onChange 回调中获得的值保存为状态,然后将其分配给适当的元素?
现在,每当我更改输入(onChange 调用 handleChange)时,它都会保存当前选定的值(如预期的那样),但是当我在另一个元素中更改输入时,之前的元素值会返回到“”,而我只是在更改值在当前的。
handleChange(el) {
this.setState({
value:el
})
}
let options = values.map(value => {
return {
value: value.name,
label: value.name,
category: el,
categoryName: data[el].name
}
})
<Select
name={el}
className='Select-filters'
closeOnSelect={false}
onChange={this.handleChange}
noResultsText='Filter couldn't be found'
placeholder={`Search ${nameNotCapitalized}`}
options={options}
delimiter=';'
simpleValue
value={value}
multi
/>
【问题讨论】:
-
您选择的输入是否有相同的选项?
-
不是,我是根据api数据生成的
标签: javascript node.js reactjs jsx