Du kannst nicht mehr als 25 Themen auswählen Themen müssen mit entweder einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.

use-debounce.ts 396B

1234567891011121314151617
  1. import { useEffect, useState } from 'react';
  2. const useDebounce = (value: string, delay: number) => {
  3. const [debouncedValue, setDebouncedValue] = useState(value);
  4. useEffect(() => {
  5. const timer = setTimeout(() => setDebouncedValue(value), delay || 500);
  6. return () => {
  7. clearTimeout(timer);
  8. };
  9. }, [value, delay]);
  10. return debouncedValue;
  11. };
  12. export default useDebounce;