记录:vue+element:DateTimePicker 不能选择当前时间前的时间(包括时分秒)

<el-form-item label="" class="inline-block" prop="sellTime">
    <el-date-picker
        :clearable="false"
        v-model="shopConfig.sellTime"
        type="datetime"
        placeholder="选择日期时间"
        :picker-options="pickerOptions"
        value-format="yyyy-MM-dd HH:mm:ss"
        class="taskTimes ml-10 wSize-n"
     ></el-date-picker>
</el-form-item>


computed: {
        pickerOptions() {
            //如果选择的⽇期为最⼩⽇期,则设置为最⼩⽇期的时分秒
            let str = ''
            if (moment().isSame(moment(this.shopConfig.sellTime), 'day')) {
                str = moment().add(1, 'H').format('HH:00:00')
            } else {
                str = '00:00:00'
            }

            return {
                disabledDate: time => {
                    return time.getTime() < Date.now() - 3600 * 1000 * 24 // 选当前时间之后的时间
                },
                selectableRange: str + ' - 23:59:59'
            }
        },
        //30天区间
        pickerOptions() {
            //如果选择的⽇期为最⼩⽇期,则设置为最⼩⽇期的时分秒
            let startStr = '00:00:00'
            let finishStr = '23:59:59'
            if (moment().isSame(moment(this.shopConfig.sellTime), 'day')) {
                startStr = moment().add(1, 'H').format('HH:00:00')
                finishStr = '23:59:59'
            } else if (moment().add(29, 'day').isSame(moment(this.shopConfig.sellTime), 'day')) {
                startStr = '00:00:00'
                finishStr = moment().add(29, 'day').format('HH:mm:ss')
            }

            return {
                disabledDate: time => {
                    const t = time.getTime()
                    const n = new Date(new Date().setHours(0, 0, 0, 0)).getTime()
                    return t < n || time > n + 2505600000 // 30天
                },
                selectableRange: startStr + '-' + finishStr
            }
        }
    },

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值