useDebounce
Debounce any value with a configurable delay. Useful for search inputs, API calls, and filtering.
import { useDebounce } from "@allem-sdk/hooks";Parameters
| Prop | Type | Default | Description |
|---|---|---|---|
| value* | T | — | The value to debounce |
| delay | number | 500 | Delay in milliseconds |
Returns
T — The debounced value, updated after the delay.
Usage
const [search, setSearch] = useState("");
const debouncedSearch = useDebounce(search, 300);
useEffect(() => {
if (debouncedSearch) {
fetchResults(debouncedSearch);
}
}, [debouncedSearch]);
<input
value={search}
onChange={(e) => setSearch(e.target.value)}
placeholder="Search..."
/>