我实际上是为一个小工作制作一个应用程序,包括3个日期,并从那些3中计算多个其他日期。这些应该是例行检查的日期等... 我遇到了一个问题:我无法找到如何处理多个输入。我有3个DatePickers,看起来像这样:
<DatePicker
dateMes={this.state.dateMes}
mode="date"
placeholder="select date"
format="DD-MM-YYYY"
minDate="01-01-1950"
maxDate="01-01-2050"
androidMode="spinner"
showIcon={false}
onDateChange={this.onDateChange}
/>
唯一改变的是dateMes(成为dateInit和dateLast)。 启动那些我有:
constructor(props) {
super(props)
this.state = { dateMes: "01-01-2000" }
this.state = { dateLast: "01-01-2000"}
this.state = { dateInit: "01-01-2000" }
}
我有点像菜鸟,所以这可能是一个基本问题。 我的问题是:我需要改变什么,以及我需要更改哪些名称才能使用3种不同的输入。
感谢您的帮助!
答案 0 :(得分:4)
你可以添加这个功能:
onDateChange = (state) => (event,value) => {
this.setState({
[state]:value
});
}
并更改您的代码:
onDateChange={this.onDateChange}
到:
onDateChange={this.onDateChange('your state name'}
例如:
onDateChange={this.onDateChange('dateMes')}
也许可以帮到你:) 注意:您可以将构造函数方法更改为:
constructor(props) {
super(props)
this.state = {
dateMes: "01-01-2000",
dateLast: "01-01-2000",
dateInit: "01-01-2000"
}
}
我认为这样更好,祝你好运:)。