16 lines
377 B
JavaScript
16 lines
377 B
JavaScript
|
|
/**
|
||
|
|
* Composable for debounced updates
|
||
|
|
* @param {number} delay - Debounce delay in milliseconds (default: 500ms)
|
||
|
|
* @returns {Function} debouncedUpdate function
|
||
|
|
*/
|
||
|
|
export function useDebounce(delay = 500) {
|
||
|
|
let timer = null;
|
||
|
|
|
||
|
|
const debouncedUpdate = (callback) => {
|
||
|
|
clearTimeout(timer);
|
||
|
|
timer = setTimeout(callback, delay);
|
||
|
|
};
|
||
|
|
|
||
|
|
return { debouncedUpdate };
|
||
|
|
}
|