5

later.js ( https://github.com/bunkat/later ) を使用して、3 か月と 6 か月ごとに繰り返しを作成しようとしています。

これは私のコードです

// My value.scheduled_date is 2018-09-06
var d = new Date(value.scheduled_date);
var day = d.getDate();
// month count will be -1 as it starts from 0
var month = d.getMonth();
var year = d.getFullYear();

var recurSched = later.parse.recur().on(day).dayOfMonth().every(3).month();
var schedules = later.schedule(recurSched).next(5);
console.log(schedules)

これにより、当月から 3 か月の繰り返しが発生しますが、スケジュールされた日付から繰り返しを開始したいと考えています。コードに開始 On を追加すると

var recurSched = later.parse.recur().on(day).dayOfMonth().every(3).month().startingOn(month + 1);
var schedules = later.schedule(recurSched).next(5);
console.log(schedules)

再発は毎年その月以降にのみ見られます。他の年の繰り返しに影響を与えないように、特定の日付から繰り返しを開始したい。

同じことが私の6か月のコードの場合です

var recurSched = later.parse.recur().on(day).dayOfMonth().every(6).month().startingOn(month+1);
var schedules = later.schedule(recurSched).next(5);
console.log(schedules);
4

2 に答える 2

0

繰り返し機能を独立して効率的に実行したい場合は、システムのスケジューラを使用することをお勧めします。つまり、Linux には crontab があります。ここでcrontabを参照できます。また、複数のパターンについては、 crontab グルを参照できます。例:

0 9 * 3,6,9,12 * node script.js

これにより、3 月、6 月、9 月、12 月の 09:00 に script.js が実行されます。」</p>

于 2018-06-06T13:07:53.623 に答える