我正在尝试将react-day-picker'sDayPicker与react-final-form.
React Final Form 需要Field为每个表单字段使用一个,这意味着只要您希望第三方表单元素在表单中可用,就创建一个适配器组件。适配器组件必须接受一个input包含valueandonChange的对象。建议只是提供一个新的onChange.
这种适用于许多其他组件的方法不适用于DayPicker. 似乎问题在于DayPicker它实际上没有onChange方法,因此由我们来管理日历更改时会发生什么,然后将日期存储在期望的value属性中。react-final-form
我在这里创建了一个codepen:https ://codesandbox.io/s/github/pcraig3/date-picker-sandbox
我有一种handleDayClick方法,Calendar.js可以在单击天数时运行,但onChange不会始终为日历触发。
selectedDays正在其Calendar自身内立即更新,但Form在日历未聚焦之前无法获得正确的日期- 表单的
validate方法只被调用一次(第一次选择一天),而每次更新原生文本输入值时都会调用它。
我希望表单值与日历的外部状态同步,并且每次单击/取消单击一天时都会触发 validate 方法。这有可能实现还是我做错了事?