我正在构建一个基于反应的电子应用程序,偶然发现了日期字段的问题。
将input
字段与type='date'
一起使用时,onChange
事件不会被触发。此外,我似乎无法输入完整日期,只要我修改它重置日期的第三个组成部分。
所以默认状态(渲染的输入字段,值的反应状态是"")是tt.mm.jjjj(德语),我认为它转换为mm / dd / yyyy。我可以关注该领域并输入01> 01,然后它声明:01.01.jjjj。一旦我输入一年的一个号码,一切都会被恢复为tt.mm.jjjj
我创建了一个带有输入[type = date]元素的空html文件,它在chrome中工作,所以它似乎是反应组件,这是错误的。
我的组件如下:
<input
type="date"
className="input-group-field"
name="birthdate"
id="birthdate"
value={this.state.birthDate}
onChange={event => this.setState({birthdate: event.target.value})}
/>
有关如何解决这个问题的想法吗?
答案 0 :(得分:3)
this.state.birthDate
和this.setState({birthdate: event.target.value})}
错误。
setState区分大小写。尝试:
this.setState({birthDate: event.target.value})}