Метод timer позволяет создавать удобную возможность выполнять что-либо через заданный промежуток времени.
Синтаксис - timer(delayTime, intervalTime).
Подключение - import { timer } from ‘rxjs’;
Пример кода:
Здесь - с задержкой в одну секунду (и с интервалом также в одну секунду) в консоли пойдут значения - 0, 1, 2, 3, 4 и тд. Если задержка не нужна, тогда можно поставить 0:
Если нужно, чтобы timer сработал как метод setTimeout в классическом JavaScript, то нужно опустить второй аргумент - интервал выполнения:
… в этом случае команда выполнится один раз - в задержкой в одну секунду.
Маленький практический пример использования timer:
… это получился простейший таймер (не обратного отсчета). При использовании в Angular можно задействовать встроенный pipe - date: ‘hh:mm:ss’.
Интересная особенность - первым параметром можно задать дату запуска таймера - signature: timer(initialDelay: number | Date, period: number, scheduler: Scheduler): Observable. Не пробовал, но надо взять на заметку.
На timer очень похож метод interval, однако timer можно рассматривать как расширенный и более гибкий вариант interval.
Ссылки: