Files
Checkmate/Client/src/Utils/debounce.jsx
T

18 lines
373 B
React
Raw Normal View History

2024-09-19 11:07:38 +08:00
import { useState, useEffect } from "react";
const useDebounce = (value, delay) => {
const [debouncedValue, setDebouncedValue] = useState(value);
2024-09-19 11:07:38 +08:00
useEffect(() => {
const handler = setTimeout(() => {
setDebouncedValue(value);
}, delay);
2024-09-19 11:07:38 +08:00
return () => {
clearTimeout(handler);
};
}, [value, delay]);
return debouncedValue;
2024-09-19 11:07:38 +08:00
};
export default useDebounce;