Javascript 将onChange逻辑添加到第三方反应日选择器元素
我正在尝试将Javascript 将onChange逻辑添加到第三方反应日选择器元素,javascript,reactjs,react-day-picker,react-final-form,Javascript,Reactjs,React Day Picker,React Final Form,我正在尝试将react day picker的day picker与集成 React Final Form要求使用for each Form字段,这意味着在希望第三方表单元素在表单中可用时创建适配器组件。适配器组件。建议是 。问题似乎在于该方法,因此,我们需要管理日历更改时发生的情况,然后将日期存储在react final form所期望的value属性中 我在这里创建了一个代码笔: 我在Calendar.js中有一个handleDayClick方法,该方法在单击日期时运行,但是没有为日历一致地
react day picker
的day picker
与集成
React Final Form要求使用for each Form字段,这意味着在希望第三方表单元素在表单中可用时创建适配器组件。适配器组件。建议是
。问题似乎在于该方法,因此,我们需要管理日历更改时发生的情况,然后将日期存储在react final form
所期望的value
属性中
我在这里创建了一个代码笔:
我在Calendar.js
中有一个handleDayClick
方法,该方法在单击日期时运行,但是没有为日历一致地触发onChange
会在selectedDays
本身中立即更新,但是Calendar
表单在日历未聚焦之前不会获得正确的日期
- 表单的
方法只调用一次(第一次选择一天),而每次更新本机文本输入值时都会调用它validate
我希望表单值与日历的外部状态同步,并在每次单击/取消单击一天时触发validate方法。这是可能实现的还是我做了完全错误的事情?使用
组件可能更容易。该组件使用标准HTML输入,支持onChange
。我是这样做的:
{({input,meta})=>(
日期:
input.onChange(天)}
inputProps={{id:id}
/>
{meta.error&&meta.toucted&&{meta.error}
)}
根据文档,您可以将逻辑添加到“inputProps”属性中,因为这将向输入组件引入属性,所以您也可以向其添加css
inputProps对象
:要添加到输入组件的其他道具
您的代码如下所示:
const dateChanged=day=>(console.log(day))//日期更改时调用的函数
输入道具={{
style:styles.dayPickerInput,
onChange:event=>dateChanged(event.target.value),
}}