Используя RxJS `generate` для создания не дрейфующего таймера, как использовать` планировщик`?
В поисках таймера - запускаемого каждую минуту, каждую минуту - который не дрейфует, я нашел это решение. Однако у меня возникают трудности с пониманием, как использовать / построить последний параметр scheduler?: SchedulerLike
,
const noDrift = generate(
0,
_ => true, // start condition
i => ++i, // iterate
i => i, // result selector
i => ... // scheduler?: SchedulerLike; every minute on the minute, but how?
);
noDrift.subscribe(() => {
// action
});
оригинальное решение, которое дрейфует:
const date = new Date();
// calculate how many ms are left till the full minute is reached
const tillNextFullMinute = (60 - date.getSeconds()) * 1000 - date.getMilliseconds();
// start on the next full minute, then just every minute
this.currentTime = timer(tillNextFullMinute, 60 * 1000);
this.currentTime.subscribe(value => {
// action
});