js文件
export default {
/**
* 计算时间差天数
* @param {String} sDate1
* @param {String} sDate2
*/
datedifference(sDate1, sDate2) { //sDate1和sDate2是yyyy-mm-dd格式
let dateSpan,iDays;
sDate1 = Date.parse(sDate1);
sDate2 = Date.parse(sDate2);
dateSpan = sDate2 - sDate1;
dateSpan = Math.abs(dateSpan);
iDays = Math.floor(dateSpan / (24 * 3600 * 1000));
return iDays;
},
}
组件
<el-form :inline="true" :model="filters">
<el-form-item label="发起时间:" prop="dateranTime">
<el-date-picker
v-model="filters.effectiveTime"
type="daterange"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
:default-time="['00:00:00', '23:59:59']"
value-format="yyyy-MM-dd HH:mm:ss"
@change="timeChuo" // 给一个事件
></el-date-picker>
</el-form-item>
</el-form>
// 引入js
methods:{
timeChuo(val) {
// 因为js中写到要 年-月-日 格式的,time1.time2 先定义一下
var time1 = val[0]
var time2 = val[1]
this.filters.timeStart = new Date(val[0]).valueOf() / 1000;
this.filters.timeEnd = new Date(val[1]).valueOf() / 1000;
let time = util.datedifference(time1,time2) // util 是一个js的文件名
console.log(util.datedifference(time1,time2)); // 这里打印的就是 选择的天数
if(time>31){
return this.$message.warning('起止时间间隔不大于31天')
}
},
}