import { ref, onBeforeMount, onBeforeUnmount } from "@vue/composition-api"; export function useNetworkDetection() { const isOnline = ref(true); const listener = () => { isOnline.value = navigator.onLine; }; onBeforeMount(() => { window.addEventListener("online", listener); window.addEventListener("offline", listener); listener(); }) onBeforeUnmount(() => { window.removeEventListener("online", listener); window.removeEventListener("offline", listener); }); return { isOnline }; }