@quidone/react-native-wheel-picker
Version:
Picker is a UI component for selecting an item from a list of options.
21 lines (20 loc) • 459 B
text/typescript
type AnyFunc = (...args: ReadonlyArray<any>) => any;
const debounce = <T extends AnyFunc>(
func: T,
delay: number,
): ((...args: Parameters<T>) => void) & {
clear: () => void;
} => {
let timer: any;
const wrapper = (...args: ReadonlyArray<any>) => {
clearTimeout(timer);
timer = setTimeout(() => {
func(...args);
}, delay);
};
wrapper.clear = () => {
clearTimeout(timer);
};
return wrapper;
};
export default debounce;