// 设置轮询任务,每秒执行获取剩余时间的函数,并更新到页面data
setGetFormatOverTime(overTime) {
// console.log(this.list.avtEndTime, "this.list.avtEndTime");
setInterval(() => {
let theOverTime = this.getFormatOverTime(overTime);
// this.setData({
// overTime: theOverTime
// })
}, 1000);
},
// 格式化倒计时
getFormatOverTime(timeString) {
// console.log(timeString, "timeString");
// timeString 为到期的时间
// 到期日期的时间戳
let ts1 = Date.parse(timeString);
// 现在的时间戳
let ts2 = Date.parse(new Date());
// 时间戳间隔
let tsD = ts1 - ts2;
// 将时间段转换为时分秒
let theFT = this.formatTs(tsD);
// return theFT
if (theFT > "0:0:0") {
this.times = "距报名结束还剩" + theFT;
} else {
this.times = "报名时间已过,暂停报名";
this.disables = true;
return;
}
// console.log(theFT, "theFT");
},
// 将时间戳转换为时分秒
formatTs(time) {
let day = Math.floor(time / (1000 * 60 * 60 * 24));
let hours = Math.floor((time / (1000 * 60 * 60)) % 24);
let minutes = Math.floor((time / (1000 * 60)) % 60);
let seconds = Math.floor((time / 1000) % 60);
return day + "天" + hours + "小时" + minutes + "分钟" + seconds + "秒";
},
调用
this.setGetFormatOverTime(this.list.avtEndTime);//将截止日期传入
将时间戳转换成时分秒 看该博主