Я пытаюсь использовать debounce пакет с Vue.js v-on:scroll
связывания следующим образом:Vue.js дребезг прокрутка
<div @scroll="debounce(onScrollMessages, 200)"></div>
Проблема заключается в том, что на самом деле debounce
возвращает функцию противодребезговой защиты можно использовать, но привязки событие таким образом на самом деле вызовет debounce(onScrollMessages, 200)
каждое событие прокрутки, это означает, что функция debounced будет вычислена, и создаст каждое событие прокрутки.
Действительная проблема в том, что @scroll
будет связывать что-то событие, как это:
onScroll: function() {
debounce(onScrollMessages, 200);
}
Но, для того, чтобы противодребезговая защиту функции вычисляется только один раз, он должен связать что-то событие, как это:
// Notice how now the scroll event calls directly the
// debounced function returned by "debounce()", not the
// function that calls "debounce()"
onScroll: debounce(onScrollMessages, 200)
Как я могу связать @scroll
событие функции, возвращаемой debounce()
и не функция, которая вызывает debounce()
каждый раз?
Можно создать скрипку из этого? – Saurabh