elementui的DateTimePicker 日期时间选择器踩坑

日期时间需要设置部分禁选时,

借助picker-options。

              :picker-options="{

                disabledDate: time => {

                  return time.getTime() < Date.now() - 8.64e7

                },

                selectableRange: startTimeRange

              }"

当前项目需要的条件是:已过去的时间不可选。

借鉴别人的方法并考虑需求最后的代码:

selectDate : {

      handler(newVal, oldVal) {

        if (newVal) {

          let now = new Date(newVal)

          let selectedDate = {

            year: now.getFullYear(),

            month: now.getMonth() + 1 > 9 ? now.getMonth() + 1 : "0" + (now.getMonth() + 1),

            date: now.getDate() > 9 ? now.getDate() : "0" + now.getDate(),

            hour: now.getHours(),

            minute: now.getMinutes() > 9 ? now.getMinutes() : '0' + now.getMinutes(),            

          }

          let selectTime = selectedDate.year + '-' + selectedDate.month + '-' + selectedDate.date + ' ' + selectedDate.hour + ':' + selectedDate.minute

          let st = ''

          let newDate = new Date()

          let date = {

            year: newDate.getFullYear(),

            month: newDate.getMonth() + 1 > 9 ? newDate.getMonth() + 1 : "0" + (newDate.getMonth() + 1),

            date: newDate.getDate() > 9 ? newDate.getDate() : "0" + newDate.getDate(),

            hour: newDate.getHours(),

            minute: newDate.getMinutes() > 9 ? newDate.getMinutes() : '0' + newDate.getMinutes(),

          }

          let today = date.year + '-' + date.month + '-' + date.date

          if (today === selectTime.split(' ')[0]) {

            // 今天

            st = date.hour + ':' + date.minute + ':00'

          } else {

            // 非今天

            st = '00:00:00'

          }

          this.startTimeRange = st + '- 23:59:00'

          this.selectDate = selectTime

        }

      }

    }

别问 为什么这么长 菜鸡只能写出这样的代码 

坑是什么呢?

1.本来直接用了value-format和format定了数据的格式----时分不要秒,

这个秒一定要加上,不然控制台就会报错。

2.一开始同样因为value-format和format 定义了时间格式,但是!!!

只要绑定了格式,这个“此刻”点击了会没有任何反应,点击事件失效。

同样是面向百度,哈哈哈哈哈哈~~~~感谢网络上的大佬

需要将value-format和format定义的内容都删掉,然后自己手动格式化时间。

所以有了上面一长串的代码。

感谢观看,欢迎指正,鞠躬。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值