使用Node-schedule进行定时任务调度

4

我正在使用一个名为node-schedule的节点模块。

我有一个函数,预计在每个季度初仅触发一次。

var rule = {hour: 0, minute: 0, day: 1, month: [0, 3, 6, 9]};

var logCost = schedule.scheduleJob(rule, function(){
  console.log('logCost output this shit at: ' + dateFormat(Date(), 'isoTime'));
});

问题在于这个函数在整个一天内(即每月的第一天)都不断执行。我该如何重新编写它,使其只执行一次?可能是我的规则变量出了问题,但我看不出来哪里有问题。
2个回答

1
你也可以尝试使用这段代码:
var logCost = schedule.scheduleJob('1 0 * * *', function(){
  console.log('logCost output this shit at: ' + new Date());
});

以上代码将在每天的00:01(12:01 AM)执行。

1

give a try with this:

var rule = {hour: 00, minute: 01, dayOfWeek: 01, month: [0, 3, 6, 9]};
var logCost = schedule.scheduleJob(rule, function(){
          console.log('logCost output this shit at: ' + dateFormat(Date(), 'isoTime'));
});

请查看这里: https://github.com/mattpat/node-schedule

应该是“dayOfWeek”,而不是“day”。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接