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日的问题了。

相关推荐
MessiGo16 分钟前
Javascript 编程基础(5)面向对象 | 5.1、构造函数实例化对象
开发语言·javascript·原型模式
前端小白从0开始31 分钟前
Vue3项目实现WPS文件预览和内容回填功能
前端·javascript·vue.js·html5·wps·文档回填·文档在线预览
JohnYan1 小时前
Bun技术评估 - 03 HTTP Server
javascript·后端·bun
开开心心就好1 小时前
高效Excel合并拆分软件
开发语言·javascript·c#·ocr·排序算法·excel·最小二乘法
難釋懷1 小时前
Vue解决开发环境 Ajax 跨域问题
前端·vue.js·ajax
特立独行的猫a1 小时前
Nuxt.js 中的路由配置详解
开发语言·前端·javascript·路由·nuxt·nuxtjs
中微子1 小时前
小白也能懂:JavaScript 原型链和隐藏类的奇妙世界
javascript
咸虾米1 小时前
在uniCloud云对象中定义dbJQL的便捷方法
前端·javascript
梨子同志1 小时前
JavaScript Proxy 和 Reflect
前端·javascript
海的诗篇_2 小时前
移除元素-JavaScript【算法学习day.04】
javascript·学习·算法