SmokingRabbit/amaze-vue

Safari 下 DatePicker 组件的日期列表错误

Closed this issue · 3 comments

DatePicker组件在 Safari 中的日期排序如下图:
2018-11-05 14 41 18
图中上月最后四天(28、29、30、31)并没有补齐,翻阅DatePicker组件源码时,在date.vue中发现以下逻辑:
2018-11-05 14 34 11
代码中生成week时使用的是:

week = new Date(year + "-" + month + "-" + 1).getDay();

经测试发现,初始化Date,在 Safari 中支持yyyy-MM-dd格式,需要把new Date(year + "-" + month + "-" + 1)中的1前面补零,也就是new Date(year + "-" + month + "-" + "01"),Saifari 可以正确识别此日期格式,测试如下:
2018-11-05 15 08 34
此外还有一种合适的做法可以避免此类情况:
2018-11-05 15 11 15
本文抛砖引玉,文中如有不足之处,希望大家批评指正,希望能够尽早修复此组件BUG。

非常感谢,最近正在开发新的组件库~ 是否有兴趣加入~