Tengo un requisito simple para mostrar una advertencia al usuario si abandona la ventana del navegador mientras se está produciendo una escritura pendiente en Firestore usando un oyente beforeunload:
window.addEventListener('beforeunload', e => { if (NO_PENDING_SAVES) return; e.preventDefault(); e.returnValue = 'Your changes are still being saved. Are you sure you want to leave?'; }, { capture: true, }); En Firestore usando Web SDK, ¿cómo detecto si hay guardados pendientes o no globalmente? Hay un método waitForPendingWrites() en el objeto Firestore, pero requeriría un sondeo y también es asíncrono, por lo que no funcionará dentro de beforeunload .