A custom React hook that wraps JavaScript's setInterval function.
$ npm install --save react-useinterval
useInterval(callback, delay, ...args)
Property | Type | Required | Description |
---|---|---|---|
callback | Function |
Yes | A function to be executed every delay milliseconds. |
delay | Number , undefined , or null |
No | The time, in milliseconds, that the timer should delay in between executions of the specified function. Note: If undefined or null is passed, the interval will be paused. |
...args | Any |
No | Additional arguments which are passed through to the function specified by callback. |
This creates a counter that counts up by five every second.
import React, { useState } from 'react';
import useInterval from 'react-useinterval';
function Counter() {
let [count, setCount] = useState(0);
const increaseCount = amount => {
setCount(count + amount);
};
useInterval(increaseCount, 1000, 5);
return <h1>{count}</h1>;
}
Inspired by Dan Abramov's blog post here.