在特定日期之后每7天运行一次节点cron

问题描述

这是每7天运行一次任务的代码

cron.schedule('0 0 */7 * *',()=>{
   console.log('Task running every 7 days')
});

现在,我只想在特定日期(例如明天)之后执行此操作。如何实施?有人可以帮忙吗?

解决方法

您可以使用setTimeout()函数指定何时开始调度:

let callback = () => {cron.schedule('0 0 */7 * *',()=>{console.log('Task running every 7 days')})};
setTimeout(callback,delay);
,

我的方法是查看今天的日期,如果需要,请按以下方式开始cron工作:

const todaysDate = new Date().toJSON().slice(0,10).replace(/-/g,'/'); // gives "2020/10/25";

if(todaysDate === "2020/10/27"){
    // begin the CRON job
}

我显然假设您想在2020年10月27日开始这项工作