Я пытаюсь создать массив раз с операторами RxJS, используя объекты Moment.js.Я думаю, что оператор generate()
хорошо подойдет, но он возвращает одно и то же время снова и снова, а не увеличенное время.Что я делаю не так?
Согласно документам,
https://rxjs -dev.firebaseapp.com / api / index / function / generate
Я должен иметь возможность использовать generate(startingValue, condition, increment)
для создания наблюдаемой, которую я могу затем направить или подписаться, но я не могу заставить это работать.
times(): void {
const startTime: Moment = START.clone(); //2019-01-01T16:00:00.000
const endTime: Moment = END; //2019-01-01T21:00:00.000
generate(startTime, time => time <= endTime, time => time.add(15, 'minutes')).pipe(
toArray()
).subscribe(console.log);
}
// returns: [2019-01-01T16:00:00.000, 2019-01-01T16:00:00.000...] 20 times
// desired: [2019-01-01T16:00:00.000, 2019-01-01T16:15:00.000, 2019-01-01T16:30:00.000... ]
Я просто получаю массивиз 20 объектов момента, все с одинаковым значением времени.