useDebounceCallback
Creates a debounced callback with a cancel method.
Usage
import { useDebounceCallback } from "@siberiacancode/reactuse";
const debounced = useDebounceCallback(() => console.log("callback"), 500);Example
const onSearch = useDebounceCallback((value: string) => {
console.log(value);
}, 300);
return (
<div>
<input onChange={(event) => onSearch(event.target.value)} />
<button onClick={() => onSearch.cancel()}>Cancel</button>
</div>
);Type Declarations
export type DebouncedCallback<Params extends unknown[]> = ((
...args: Params
) => void) & {
cancel: () => void;
};
export declare const useDebounceCallback: <Params extends unknown[], Return>(
callback: (...args: Params) => Return,
delay: number
) => DebouncedCallback<Params>;