react-hooks-bank
Version:
A collection of **powerful, reusable custom React hooks** for complex, non-trivial interactions that go beyond React’s native features.
16 lines (15 loc) • 653 B
JavaScript
import { useEffect, useState } from "react";
export function useNetworkStatus() {
var _a = useState(navigator.onLine), isOnline = _a[0], setIsOnline = _a[1];
useEffect(function () {
var handleOnline = function () { return setIsOnline(true); };
var handleOffline = function () { return setIsOnline(false); };
window.addEventListener("online", handleOnline);
window.addEventListener("offline", handleOffline);
return function () {
window.removeEventListener("online", handleOnline);
window.removeEventListener("offline", handleOffline);
};
}, []);
return isOnline;
}