textualize/frontend/utils/createDebounce.ts
2023-02-10 22:58:00 -06:00

12 lines
293 B
TypeScript

const createDebounce = (fn: Function, ms = 300) => {
let timeoutId: ReturnType<typeof setTimeout>
return function (this: any, ...args: any[]) {
clearTimeout(timeoutId)
timeoutId = setTimeout(() => {
return fn.apply(this, args)
}, ms)
}
}
export default createDebounce