fix useOffline having incorrect state when listener isn’t fired

This commit is contained in:
Sidney Alcantara
2022-10-12 10:45:41 +11:00
parent 17a585e629
commit bebde59147

View File

@@ -1,11 +1,14 @@
import { useState, useEffect } from "react";
export default function useOffline() {
const [isOffline, setIsOffline] = useState(true);
const [isOffline, setIsOffline] = useState(false);
const handleOffline = () => setIsOffline(true);
const handleOnline = () => setIsOffline(false);
useEffect(() => {
// Need to set here because the listener doesnt fire on initial load
setIsOffline(!window.navigator.onLine);
window.addEventListener("offline", handleOffline);
window.addEventListener("online", handleOnline);