Будет ли Firestore продолжать читать документы для прослушивателя onSnapshot, если пользователь закроет браузер? - PullRequest
0 голосов
/ 08 мая 2020

Если я начну читать документы из коллекции Firestore с помощью вызова query.onSnapshot(), при каких обстоятельствах Firestore автоматически откажется от подписки и перестанет читать документы?

В частности, если пользователь закрывает браузер или его компьютер выходит из строя , что тогда происходит? Я предполагаю, что в какой-то момент Firestore поймет, что пользователя больше нет, чтобы получать данные, но как это работает?

Я создаю PWA, поэтому, помимо закрытия браузера, мой пользователь может перемещаться «внутри» приложения. Должен ли я быть уверен, что я тщательно отписываюсь от всех открытых слушателей или рискую прочитать неиспользуемые документы? Или есть какой-то умный механизм для «сборки мусора», оставленный прослушивателями onSnapshot? Я бы предпочел не платить за чтение документов, которые мне больше не нужны.

Спасибо!

1 Ответ

1 голос
/ 08 мая 2020

Поскольку код веб-страницы не может работать после закрытия вкладки, в это время будет остановлен слушатель. Запрос не управляется чем-то постоянным, например, сервис-воркером. Я считаю это лучшей практикой. Оставить слушателей активными дольше, чем ожидалось, - хороший способ получить больше, чем вы ожидали.

...