我在我的项目中使用React Select,我遇到了一种情况,我需要通过数组循环并在每个循环中显示选择选项。
{Array.apply(null, { length: 3 }).map((item, index) => (
<div className="wrapper-person-2">
<p className="tab-text">Profissão</p>
<Select
value={calcFormikValuesSelect()}
name={`relation[${index}]`}
onChange={handleChange}
options={options}
className="select-smoker"
/>
</div>
))}
现在为onChange我使用的函数是在文档
中提到的const handleChange = selectedOption => {
this.setState({ selectedOption });
console.log(`Option selected:`, selectedOption);
};
但是问题是我需要传递我的"index"值到onChange函数也为我的工作,所以我看着传递onChange上的多个参数,但遗憾地发现没有什么有用的:(
希望有人能帮帮我,谢谢!
要传递多个参数给handleChange
,只需这样调用它:
{Array.apply(null, { length: 3 }).map((item, index) => (
<div className="wrapper-person-2">
<p className="tab-text">Profissão</p>
<Select
value={calcFormikValuesSelect()}
name={`relation[${index}]`}
onChange={(selectedOption) => handleChange(selectedOption, index)}
options={options}
className="select-smoker"
/>
</div>
))}
:
const handleChange = (selectedOption, index) => {
this.setState({ selectedOption });
console.log(`Option selected:`, selectedOption);
console.log(`Index selected:`, index);
};