useNetwork
Tracks online status and connection information.
Usage
import { useNetwork } from "@siberiacancode/reactuse";
const network = useNetwork();callback:
const network = useNetwork((value) => {
console.log(value.online);
});Example
import { useNetwork } from "@siberiacancode/reactuse";
export const NetworkInfo = () => {
const network = useNetwork();
return (
<div>
{network.online ? "Online" : "Offline"}
{network.online && (
<div>
Type: {network.type ?? "unknown"} ({network.effectiveType ?? "n/a"})
</div>
)}
</div>
);
};Notes
- Hook uses the navigator.connection API.
Type Declarations
export interface UseNetworkReturn {
downlink?: number;
downlinkMax?: number;
effectiveType?: "2g" | "3g" | "4g" | "slow-2g";
online: boolean;
rtt?: number;
saveData?: boolean;
type?:
| "bluetooth"
| "cellular"
| "ethernet"
| "mixed"
| "none"
| "other"
| "unknown"
| "wifi"
| "wimax";
}
export declare const useNetwork: (
callback?: (value: UseNetworkReturn) => void
) => UseNetworkReturn;