scinote-web/app/javascript/vue/shared/debounce.js
2023-05-17 12:00:37 +02:00

12 lines
332 B
JavaScript

export function debounce(fn, wait){
let timer;
return function(...args){
if(timer) {
clearTimeout(timer); // clear any pre-existing timer
}
const context = this; // get the current context
timer = setTimeout(()=>{
fn.apply(context, args); // call the function if time expires
}, wait);
}
}