Обновление Service Worker перед загрузкой приложения - PullRequest
0 голосов
/ 27 мая 2018

Можно ли получить новую версию приложения с работником службы и сразу же отобразить ее.Расписание:

  • новая версия доступна на сервере
  • пользователь заходит на страницу
  • работник сервиса обновляет все данные с сервера
  • пользователь получает последний контент без необходимости перезагрузки страницы

Я видел комментарий, что можно открыть окно предупреждения, это действительно нужно?

Ответы [ 2 ]

0 голосов
/ 30 мая 2018

Я вижу, что вы хотите предоставить пользователю самую последнюю доступную версию, чтобы сделать это, вы должны сообщить пользователю, что новая версия доступна через окно оповещения или всплывающее окно, которое позволяет ему вызвать перезагрузку страницы (кнопка).У вас уже должна быть установка обновленного сервисного работника, отправив сообщение на ПО, сообщающее ему skipWaiting(), чтобы вы могли быть уверены, что при перезагрузке страницы будет гарантированно предоставлена ​​новейшая версия ваших ресурсов.

0 голосов
/ 29 мая 2018

Модель, в которой вы описываете, - это та, в которой работник службы всегда идет network-first и по умолчанию не отображает кэшированный контент.В этом сценарии вы ничего не проповедуете.

Вы теряете прирост производительности , который вы получите, перейдя в кеш в первую очередь.Преимущество по сравнению с отсутствием сервисного работника заключается в том, что вы по крайней мере сможете использовать кэшированный контент, когда сеть полностью недоступна, вместо того, чтобы браузер отображал обычную страницу ошибки в автономном режиме.

...