7 lines
254 B
TypeScript
7 lines
254 B
TypeScript
export function debounce<T extends Function>(func: T, delay = 300): T {
|
|
let timeout: NodeJS.Timeout;
|
|
return function (...args: any[]) {
|
|
clearTimeout(timeout);
|
|
timeout = setTimeout(() => { func(...args); }, delay);
|
|
} as any;
|
|
}
|