@frank-auth/react
Version:
Flexible and customizable React UI components for Frank Authentication
16 lines (11 loc) • 367 B
text/typescript
import * as React from 'react'
export function useDebounce<T>(value: T, delay?: number): T {
const [debouncedValue, setDebouncedValue] = React.useState<T>(value)
React.useEffect(() => {
const timer = setTimeout(() => setDebouncedValue(value), delay ?? 500)
return () => {
clearTimeout(timer)
}
}, [value, delay])
return debouncedValue
}