首先,在选用 ElementUI 关于时间的选择器时,通常会设置 今天之后的时间不可选 或者 今天之前的时间不可选 等其他关于时间限制的需求。
那么参考相关文章和官方文档之后,我们可以知道,我们需要使用 picker-options 里的 disabledDate 去对其进行限制。在这里,参考的文章如下:
【ElementUI】日期选择器时间选择范围限制,根据接口灵活设置可选时间。只能选今天之前的时间,或者是只能选今天之后的时间。今天是否可以选。限制结束日期不能大于开始日期
但是!
同样的一句话,咋就遇到问题了呢?
time.getTime() > Date.now() - 8.64e6;
使用的时候发现:目前今天之后的时间确实不能选了,但是今天的日期依然不能选。
在出现这个问题的时候,我第一反应就是对这个时间的限制进行了质疑。但是我测试写了几个日期选择器,这么写还真就没有问题,只在我这个 DateTimePicker 出现了问题。
所以最终问题的锁定还是很快的,必然是出在了 DateTimePicker 本身上。最终通过排查发现,是因为我补充了 default-time 的原因。
最终我把 default-time 去掉了。
但 default-time 的作用是给选择时间段的起始日期和结束日期调整时间的,这样才能通过接口获取正确时间段内数据。比如我选择今天,使用 default-time 的结果是:
-12-23 00:00:00-12-23 23:59:59
而不使用 default-time 的结果是:
-12-23 00:00:00-12-23 00:00:00
最后想要保证数据准确性,只需要在获取时间时,再对时间进行处理即可。
【ElementUI】DateTimePicker 日期时间选择器 设置 disabledDate 禁用今天之后的时间后 今天的日期选择不了的问题