React Hook Form Controller中使用React DatePicker出现闪烁/意外重渲染问题求助
React Hook Form Controller中使用React DatePicker出现闪烁/意外重渲染问题求助
各位好,我最近在项目里用React Hook Form的Controller组件包裹react-datepicker时遇到了个头疼的问题:每次和日期选择器交互(比如选择日期),组件都会意外闪烁或者触发不必要的重渲染。
先给大家看一下我简化后的代码:
<Controller name="startDate" control={control} render={({ field }) => ( <DatePicker {...field} onChange={(value: Date) => { field.onChange(value); onDateChange?.(value); // 自定义的处理函数 }} /> )} />
我一开始猜测是render prop里的onChange回调每次渲染都被重新创建导致的,特意用useCallback把这个回调包裹了起来,但就算做了这个优化,日期选择器还是会闪烁,甚至给我一种像是被重新挂载了的感觉。
我当前使用的依赖版本如下:
react-datepicker: ^7.6.0react: 18.3.1react-hook-form: 7.57.0
想请教下有没有同学遇到过这个问题?react-datepicker和react-hook-form的render props用法之间,是不是存在已知的bug或者兼容性问题呀?
内容来源于stack exchange
相关产品推荐
相关产品推荐

