计算时间差
项目中需要倒计时效果
data(){return {data:null,timingDate:{days:'',hours:'',minutes :'',seconds :'',},//全局定时器对象//作用:页面跳转或其他需要时用于关闭定时器serverTimeOut:null}}methods:{//计算时间差getTimingDate(endDate) {//endDate作为一个变量传进来//如果时间格式是正确的,那下面这一步转化时间格式就可以不用了var dateEnd = new Date(endDate.replace(/-/g, "/")); //将-转化为/,使用new Datevar dateBegin = new Date(); //获取当前时间var dateDiff = dateEnd.getTime() - dateBegin.getTime(); //时间差的毫秒数var dayDiff = Math.floor(dateDiff / (24 * 3600 * 1000)); //计算出相差天数var leave1 = dateDiff % (24 * 3600 * 1000); //计算天数后剩余的毫秒数var hours = Math.floor(leave1 / (3600 * 1000)); //计算出小时数//计算相差分钟数var leave2 = leave1 % (3600 * 1000); //计算小时数后剩余的毫秒数var minutes = Math.floor(leave2 / (60 * 1000)); //计算相差分钟数//计算相差秒数var leave3 = leave2 % (60 * 1000); //计算分钟数后剩余的毫秒数var seconds = Math.round(leave3 / 1000);this.timingDate.days = dayDiff < 10 ? "0" + dayDiff : dayDiffthis.timingDate.hours = hours < 10 ? "0" + hours : hours;this.timingDate.minutes = minutes < 10 ? "0" + minutes : minutes;this.timingDate.seconds = seconds < 10 ? "0" + seconds : seconds;},getData() {let that = this;matchModel.getData().then(res => {if (res.code != 0) {return consolt.log('error')}this.data = res.data;this.getTimingDate(this.data.voteEndTime);this.serverTimeOut = setInterval(function () {that.getTimingDate(res.data.voteEndTime);}, 1000);})},}