0

定期的なイベントに Later.js を使用しています。機能をテストしようとしrecur()ていますが、正しく動作していないようで、理由がわかりません。これが私の例です:

var schedule_hourly = later.schedule(later.parse.recur().every(x).hour()),
    start_hourly = moment(start_day + " " + start_time, 'YYYY/MM/DD HH:mm');
var occurrences_hourly = schedule_hourly.next(y, start_hourly);

for (var i = 0; i < occurrences_hourly.length; i++) {
    var execution_dates_hourly = [];
    execution_dates_hourly = moment(occurrences_hourly[i]).format('YYYY/MM/DD HH:mm');
    console.log(execution_dates_hourly);
}

どこ:

  • xそしてy、私が変更できる値です。
  • start_dayYYYY/MM/DD の形式です。
  • start_time形式は HH:mm です。

最初の日付が 2016/07/20 10:00、x=2 および y=5 の場合、コンソールに次のように表示されます。

2016/07/20 10:00
2016/07/20 12:00
2016/07/20 14:00
2016/07/20 16:00
2016/07/20 18:00

したがって、正しく動作しています。10:00 から 2 時間ごとに 5 回繰り返される繰り返しイベントを受け取ります。

ただし、x を 8 に変更すると、次のようになります。

2016/07/20 16:00
2016/07/21 00:00
2016/07/21 08:00
2016/07/21 16:00
2016/07/22 00:00

なぜ今16:00に開始するのですか?前回のように10時開始で次は18時じゃないですか?

4

1 に答える 1