initial commit
This commit is contained in:
@@ -1,16 +1,12 @@
|
||||
import { useState, useEffect } from "react";
|
||||
import { debounce } from "lodash";
|
||||
|
||||
export const useDebounce = <T>(value: T, delay = 300): T => {
|
||||
const [debouncedValue, setDebouncedValue] = useState(value);
|
||||
|
||||
useEffect(() => {
|
||||
const handler = debounce(() => setDebouncedValue(value), delay);
|
||||
const handler = setTimeout(() => setDebouncedValue(value), delay);
|
||||
|
||||
handler();
|
||||
return () => {
|
||||
handler.cancel();
|
||||
};
|
||||
return () => clearTimeout(handler);
|
||||
}, [value, delay]);
|
||||
|
||||
return debouncedValue;
|
||||
|
||||
Reference in New Issue
Block a user