useFreshTick
Aboutβ
Like useFreshRef but specifically for functions
Installationβ
npm install --save rooks
Importing the hookβ
import { useFreshTick } from "rooks";
Usageβ
function Demo() {
const [currentValue, setCurrentValue] = useState(0);
function increment() {
setCurrentValue(currentValue + 1);
}
// no stale closure issue
const freshTick = useFreshTick(increment);
useEffect(() => {
const intervalId = setInterval(() => {
freshTick();
}, 1000);
return () => clearInterval(intervalId);
}, []);
return null;
}
render(<Demo />);
Argumentsβ
Argument value | Type | Description |
---|---|---|
callback | function | The function call which needs to be fresh at all times |
Returnsβ
Return value | Type | Description | Default value |
---|---|---|---|
ref | function | A function with fresh args | undefined |
Codesandbox Examplesβ
Basic Usageβ
Join Bhargav's discord serverβ
You can click on the floating discord icon at the bottom right of the screen and talk to us in our server.