【发布时间】:2018-06-15 00:00:24
【问题描述】:
如果我使用多个日期选择器实例,我在更新 react-datepicker 上的日期时遇到问题。
日期选择器组件:
<DatePicker
selected={this.state.from}
onChange={this.changeDate.bind(this)}
/>
关于更改处理程序:
changeDate(date) {
this.setState({
from : date
});
}
如果我只使用一个实例,这似乎可以正常工作,但是当我添加多个实例时,我必须为每个新创建的日期选择器组件创建单独的 onchange 处理程序。 我正在寻找的是一种只编写一个 onchange 处理函数并在同一函数中为多个 datepicker 实例处理更改事件的方法。
【问题讨论】:
-
听起来您有一个包含多个 DatePicker 的视图,并且每个视图都更新了自己单独的 state 属性,对吧?如果是这样,您可以重写
changeDate以接受指示状态属性名称的参数,并返回仅在该属性上调用setState的函数。 -
是的,这是正确的,我尝试这样做,但我无法更新 handlechange 函数中的状态,如果我用
"startDate": dateValue之类的字符串文字更新状态,那么它可以工作,但如果我使用像dateName: dateValue这样的函数参数然后它不起作用,即使dateName=startDate -
你在使用 react-datepicker 吗?我和你有同样的问题。你是怎么解决的?
标签: javascript reactjs datepicker react-datepicker