useInterval
A React Hook that create a interval counter.
Demo
Usage
See API for more details.
Source
Click links below to view source on GitHub.
API
const count = useInterval(interval)
const { count, reset, ...controls } = useInterval(interval, { controls: true })
Interval
A number
that represents the interval in milliseconds.
Options
export type UseIntervalOptions<Controls extends boolean> = {
/**
* Expose more controls
*
* @defaultValue false
*/
controls?: Controls
/**
* Execute the update immediately on calling
*
* @defaultValue true
*/
immediate?: boolean
/**
* Callback on every interval
*/
callback?: (count: number) => void
}
Returns
Retuerns contain Pausable instance that can be paused, resumed.
See Pausable for more details.
export interface UseIntervalAction extends UseCounterReturnsAction, Pausable {
/**
* Reset the count
*/
reset: (count?: number) => void
}
export type UseIntervalWithControlsReturns = [
/**
* Current count
*/
count: number,
/**
* Counter Actions
*/
UseIntervalAction,
]
export type UseIntervalReturns<Controls extends boolean> = Controls extends true ? UseIntervalWithControlsReturns : number