Я пытаюсь понять throttleTime
против debounceTime
и какой из них использовать, когда?
У меня есть кнопка upvote, которая отправляет запрос API бэкэнду (который подсчитывает голоса). Пользователь может отправить кнопку несколько раз, но я бы хотел ограничить время нажатия кнопки в секунду.
Я знаю, что операторы throttleTime и debounceTime могут это сделать, но какой из них выбрать лучше?
const upvoteClicks = fromEvent(this.el.nativeElement, 'click')
.pipe(debounceTime(500))
.subscribe(() => this.myService.postUpvote(this.postId));