900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > AntdV4日历控件Calendar日期选择触发机制bug

AntdV4日历控件Calendar日期选择触发机制bug

时间:2020-08-31 16:13:23

相关推荐

AntdV4日历控件Calendar日期选择触发机制bug

描述:

切换日历控件的日期时,会触发选中日期事件

V3不存在这个问题

V4新有的相当于onchangeonselect会同时触发

因为业务上,选中事件会触发请求,在页面会有些显示,所以有些影响

效果:

解决思路:

弄清触发机制

使用select选择年月 会调用绑定的onChange方法

本来想在这里加个字段做甄别,但是组件包装一层后,只会传一个参数过来,拿不到第二个参数

代码中写了两个参数:

源码中只会拿一个参数:

并且如果绑定了onselect会触发onselect

找到触发顺序

选择日期>>onChange>>onSelect

用参数做甄别

刚刚第一步试过了,无法在已定的func做第二参数当甄别

所以自定义一个函数,在函数中把握顺序,然后再回调

代码如下:

这里用了一个全局变量changed来做甄别

changed不在state里,因为在state里可能会有异步时间差

onSelect如下

整体顺序

流程:

select触发自定义handleChangehandleChange里更改全局的changed值作为甄别,然后回调调用onChange触发onSelect,进入onSelect被changed拦截回到handleChange改回changed值,以便不影响后续onSelect

代码集合

有其他方法或官方api,给我留言吧!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。