<el-form-item
label="时间"
>
<el-date-picker
v-model="form.order_time"
type="datetimerange"
placeholder="选择日期"
format="yyyy-MM-dd HH:mm:ss"
value-format="yyyy-MM-dd HH:mm:ss"
:picker-options="order_time_picker_options"
@change="handleOrderTimeChange"
:default-time="['00:00:00', '23:59:59']"
/>
</el-form-item>
// 下单时间
pickerMinDate: '',
order_time_picker_options: {
// disabledDate(time) {
// return (
// time.getTime() > new Date(`${Utils.getToday()} 23:59:59`).getTime()
// );
// },
},
created() {
// 下单时间
this.order_time_picker_options.onPick = (obj) =>{
this.pickerMinDate = new Date(obj.minDate).getTime();
}
this.order_time_picker_options.disabledDate = (time) =>{
if (this.pickerMinDate) {
const day1 = 30 * 24 * 3600 * 1000
let maxTime = this.pickerMinDate + day1
let minTime = this.pickerMinDate - day1
let current_time = new Date().format('yyyy-MM-dd')+' 23:59:59';
let t = new Date(current_time).getTime();
return time.getTime() > maxTime || time.getTime() < minTime || time.getTime() > t ;
} else {
return time.getTime() > Date.now() + 0 * 24 * 3600 * 1000
}
}
}
main.js
Date.prototype.format = function(fmt) {
var o = {
"M+" : this.getMonth()+1, //月份
"d+" : this.getDate(), //日
"h+" : this.getHours(), //小时
"m+" : this.getMinutes(), //分
"s+" : this.getSeconds(), //秒
"q+" : Math.floor((this.getMonth()+3)/3), //季度
"S" : this.getMilliseconds() //毫秒
};
if(/(y+)/.test(fmt)) {
fmt=fmt.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length));
}
for(var k in o) {
if(new RegExp("("+ k +")").test(fmt)){
fmt = fmt.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length)));
}
}
return fmt;
}
参考文章:解决Element DateTimePicker无法选择当天日期