diff options
author | Iván Ávalos <avalos@disroot.org> | 2022-06-16 14:02:13 -0500 |
---|---|---|
committer | Iván Ávalos <avalos@disroot.org> | 2022-06-16 14:02:13 -0500 |
commit | 0b212dd38fb362c9d433ad91840c3cfc5a50ade8 (patch) | |
tree | 15d0722d35ab7633da7fce23da97669ce6cafb9b /modern/src/reactHelper.js | |
parent | a57390425913896128b2472ae95e1504c521422f (diff) | |
download | etbsa-traccar-web-0b212dd38fb362c9d433ad91840c3cfc5a50ade8.tar.gz etbsa-traccar-web-0b212dd38fb362c9d433ad91840c3cfc5a50ade8.tar.bz2 etbsa-traccar-web-0b212dd38fb362c9d433ad91840c3cfc5a50ade8.zip |
Removed TLS from proxy and added automatic playback on replay page
Diffstat (limited to 'modern/src/reactHelper.js')
-rw-r--r-- | modern/src/reactHelper.js | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/modern/src/reactHelper.js b/modern/src/reactHelper.js index 7503360..0e80596 100644 --- a/modern/src/reactHelper.js +++ b/modern/src/reactHelper.js @@ -20,3 +20,27 @@ export const useEffectAsync = (effect, deps) => { }; }, deps); }; + +// Source: https://overreacted.io/making-setinterval-declarative-with-react-hooks/ +export const useInterval = (callback, delay) => { + const ref = useRef(); + let id = null; + + // Remember the latest callback. + useEffect(() => { + ref.current = callback; + }, [callback]); + + // Set up the interval. + useEffect(() => { + function tick() { + ref.current(); + } + if (delay !== null) { + id = setInterval(tick, delay); + return () => clearInterval(id); + } + }, [delay]); + + return id; +} |