只能选择当前时间30分钟之后的时间
<el-date-picker v-model="formData1.execTime" popper-class="execTimeClass" type="datetime" placeholder="选择时间" value-format="yyyy-MM-dd HH:mm:ss" format="yyyy-MM-dd HH:mm:ss" :picker-options="commonEditStartOptions()"></el-date-picker>
commonEditStartOptions() {
let val = this.formData1.execTime;
let ranget = '';
if (val) {
if (moment(val).format('YYYYMMDD') === moment().format('YYYYMMDD')) {
ranget = `${moment().add(30, "minutes").format("HH:mm:ss")}-23:59:59`;
this.defaultTime30 = moment().add(30, "minutes").format("HH:mm:ss");
} else {
ranget = '00:00:00-23:59:59';
}
}
return {
disabledDate: (time) => {
return time.getTime() < new Date(moment().subtract(1, 'days').format('YYYY-MM-DD HH:mm:ss')).getTime() // 禁止选择今日之前的
},
selectableRange: ranget
}
},
发现这样来回切换的时候会有问题,时间切换不过来,所以加上一个监听即可
defaultTime30() {
// 选中当前日期时 时间默认30分钟之后的
this.formData1.execTime = moment().add(30, "minutes").format('YYYY-MM-DD HH:mm:ss');
},