mirror of
https://github.com/mue/mue.git
synced 2026-07-18 06:24:17 +02:00
21 lines
469 B
JavaScript
21 lines
469 B
JavaScript
import { useEffect, useRef } from 'react';
|
|
|
|
export const useTimeUpdate = (callback, interval = 1000) => {
|
|
const savedCallback = useRef(callback);
|
|
|
|
useEffect(() => {
|
|
savedCallback.current = callback;
|
|
}, [callback]);
|
|
|
|
useEffect(() => {
|
|
// Immediately execute callback to avoid delay
|
|
savedCallback.current();
|
|
|
|
const id = setInterval(() => {
|
|
savedCallback.current();
|
|
}, interval);
|
|
|
|
return () => clearInterval(id);
|
|
}, [interval]);
|
|
};
|