Стратегия для приложения веб + офлайн

Я не могу настроить правильную стратегию в Workbox для следующего контекста. Я хочу чтобы :

  • максимальный файл можно кэшировать локально для ускорения загрузки.
  • но если более новая версия доступна в Интернете для файла, ее необходимо обновить локально (особенно с файлами js)
  • приложение должно работать в автономном режиме, но всегда должно использовать последнюю версию файла.

Это может быть просто, но я не могу сделать это только с предварительным кэшированием (мои изменения не попадают в браузер клиента). Предварительное кэширование работает в автономном режиме (если у меня есть все файлы...) но файлы не обновляются (я должен сделать это вручную...). Если у вас есть идея (и пример...), большое спасибо! гуэн


person GuenLM    schedule 04.12.2020    source источник


Ответы (1)


workbox-precaching должен обрабатывать большую часть того, что вы описываете. Единственное, о чем вам нужно знать, это то, что жизненный цикл сервисного работника контролирует, когда пользователь в конечном итоге увидит обновленные версии предварительно кэшированных ресурсов.

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

Если вы столкнулись со сценарием, в котором это руководство не помогает, тогда сообщите об ошибке с этапами воспроизведения в репозитории Workbox GitHub — хороший следующий шаг.

person Jeff Posnick    schedule 04.12.2020