业务需求:数据大屏页面中的某个方法需要在今天12:00执行一次,或是在今天的17:00执行一次,
这里用到 setTimeout定时器来实现。
//获取某个时间的时间戳
getCurrentDate(time) {
let now = new Date();
let year = now.getFullYear();
let month = now.getMonth() + 1;
let day = now.getDate();
return year + "-" + month + "-" + day + ' ' + time
},
mounted(){
let timeList = ['7:35:00', '17:05:00']
timeList.forEach(item => {
let nowtime = new Date().getTime()
let onetime = new Date(this.getCurrentDate(item)).getTime()
if (nowtime > onetime) {
return
} else {
let t = (onetime - nowtime)
setTimeout(() => {
//要执行的方法
}, t)
}
})
}