fix: version 2.2.3 -- auto-reload al tomar control el service worker nuevo

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Milton Gonzalez
2026-09-22 12:34:10 -05:00
parent ee72b52b13
commit 62f94b09ee
5 changed files with 23 additions and 3 deletions
+13
View File
@@ -11,6 +11,19 @@ installGlobalErrorReporter();
// nada al usuario (no hay riesgo de mostrar una version vieja de la UI por mucho tiempo).
registerSW({ immediate: true });
// skipWaiting+clientsClaim (activados por autoUpdate) hacen que el service worker nuevo tome
// control solo, pero eso NO refresca la pagina ya abierta -- el usuario seguia viendo JS/CSS
// viejo hasta un F5 manual. Con esto, en cuanto el nuevo SW toma control, se refresca sola una
// vez (la bandera evita un loop si el evento dispara mas de una vez).
if ('serviceWorker' in navigator) {
let reloaded = false;
navigator.serviceWorker.addEventListener('controllerchange', () => {
if (reloaded) return;
reloaded = true;
window.location.reload();
});
}
ReactDOM.createRoot(document.getElementById('root')).render(
<React.StrictMode>
<App />