Hola amigos de la #nerdytud
Quiero compartirles un método sencillo para detectar el status de la red, por medio de la creación de un hook.
Crear aplicación
npx create-react-app react-status
cd react-status
Crear hook
import { useEffect, useState } from 'react';
const useOnline = () => {
const [status, setStatus] = useState(false);
const checkStatus = () => {
setStatus(navigator.onLine);
};
useEffect(() => {
checkStatus();
}, []);
window.addEventListener('offline', (event) => {
setStatus(false);
});
window.addEventListener('online', (event) => {
setStatus(true);
});
return status;
}
export default useOnline;
Modificar App.js
import useOnline from './hooks/useOnline';
const App = () => {
const online = useOnline();
return (<div>{online ? 'online' : 'offline'}</div>);
}
export default App;
Ejecutar la aplicación
npm start