elementui时间选择器time-picker返回值不对的问题

1. 问题

天杀的elementui的time-picker,导致我开发的系统出现了一次生产问题,原因竟然是因为组件库的bug!直接上截图。

如图,正常情况下,选择时间后,想要得到的值理应是当天的时间,如图是当年的10月13日,也就是发文的今天。

然而,当我们手动输入值时,得到的值却是当年的1月1日的时间,如图为今年的Jan 01,就是1月1日!

这可把我害惨了,通过日志拿到当时请求的报文发现传的值不对,然而自己却一直复现不了,还以为是代码其他地方把这个值改到了,直到,我在github的elementui库找到了这个issue,[Bug Report] TimePicker 时间选择器,手动输入时间后,默认日期为当年1月1号 #22048

然后去问了产品当时他的操作,他说他的确开始有输入过,这才破了案。

可以看见上图,现在这个issue还是为Open状态,我在版本更新日志也没找到对这个bug的fix,所以大家开发的时候一定要注意这个问题。

2. 解决

我们的解决方法是用time-picker的editable属性禁用掉手动输入,就让用户只能滑动选择。不过这是因为我们时间急,只是权宜之计。还有其他解决方法,比如只取这个值的时分秒,然后自己手动new Date,获取当天0点的时间戳,再加上返回的时分秒,手动拼一次数据,这样就能防止手动输入时间为1月1日的问题了。

相关推荐
mCell2 小时前
使用 useSearchParams 同步 URL 和查询参数
前端·javascript·react.js
mCell4 小时前
前端路由详解:Hash vs History
前端·javascript·vue-router
海上彼尚4 小时前
无需绑卡的海外地图
前端·javascript·vue.js·node.js
1024肥宅4 小时前
手写 call、apply、bind 的实现
前端·javascript·ecmascript 6
科杰智能制造5 小时前
纯前端html、js实现人脸检测和表情检测,可直接在浏览器使用
前端·javascript·html
每天吃饭的羊5 小时前
组件库的有些点击事件是name-click这是如何分装de
前端·javascript·vue.js
x***01065 小时前
SpringSecurity+jwt实现权限认证功能
android·前端·后端
1024肥宅6 小时前
防抖(Debounce)
前端·javascript·ecmascript 6
1024肥宅6 小时前
节流(Throttle)
前端·javascript·ecmascript 6
大怪v6 小时前
【Virtual World 02】两点一线!!!
javascript·css·html