如果我使用多个datepicker实例,我在使用react-datepicker更新日期时遇到问题。
日期选择器组件:
<DatePicker
selected={this.state.from}
onChange={this.changeDate.bind(this)}
/>
在变更处理程序上:
changeDate(date) {
this.setState({
from : date
});
}
如果我只使用一个实例,这似乎工作正常,但是当我添加多个实例时,我必须为每个新创建的日期选择器组件创建单独的onchange处理程序。 我正在寻找的是一种只编写一个onchange处理函数并在同一函数中处理多个datepicker实例的更改事件的方法。
答案 0 :(得分:1)
您可以使用对象field
状态将每个日期值存储在属性
this.state = {
fields: {}
}
handleDateChange = (dateName, dateValue) => {
this.setState({
fields: {
...this.fields,
[dateName]: dateValue
}
})
}
// IN RENDER
<ReactDatepicker
value={this.fields["dateStart"]}
onChange={(value) => handleDateChange("dateStart", value)}
/>
答案 1 :(得分:0)
您可以使用两个参数onChange
和dateName
的{{1}}处理程序
dateValue