这段时间在做一个项目,有个日期选择功能,精确度有到年月日时,在用到组件时候发现 fields="hour”的时候 初始化后日那一列数据是空的,只有滑动其他年月时之后,日那一列才有数据,我就去看看源码到底什么问题。
第一步
找到w-picker组件--->date-picker.vue
第二步
在methods中找到checkValue方法
找到case "hour":
源码里的正则校验 只能校验’2022-01-01 10:00:00‘这种格式的时间
如果是'2022-01-01 10'这种格式的时间 则校验为fasle
第四步
我们需要把正则校验换成
strReg=/^\d{4}-\d{2}-\d{2} \d{2}?$/;
第五步
找到getDefaultDate方法在let value=this.value;后面加上这一段代码
let reg =/^\d{4}-\d{2}-\d{2} \d{2}?$/
if(reg.test(value)){
value = value+':00:00'
}
把let defaultDate = 这行代码换成
let defaultDate=value?new Date(value):new Date();
以上就是全部需要改动的代码啦,结束。
有什么问题可以留言,谢谢大家。