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

时间:2020-10-25 05:05:48

标签: node.js express node-cron

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

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

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

2 个答案:

答案 0 :(得分:1)

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

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

答案 1 :(得分:1)

我的方法是查看今天的日期,如果需要,请按以下方式开始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日开始这项工作