Отключить serviceWorker, когда он-лайн - PullRequest
1 голос
/ 07 января 2020

Есть ли простое решение для настройки serviceWorker в PWA, чтобы отключить загрузку из кэша, когда доступно inte rnet. Я хочу, чтобы приложение загружалось из кеша только при отсутствии соединения, а если оно в сети, то загружалось с сервера. Сейчас ситуация, когда serviceWorker не позволяет refre sh, даже если вы щелкнете по перезагрузке (я знаю, как обновить sh для себя, но на стороне пользователя это проблема) ... Я использую стандартную настройку serviceWorker с React, но любое другое решение или пример с любым другим фреймворком помог бы мне.

Ответы [ 2 ]

4 голосов
/ 07 января 2020

Звучит так, как будто вам нужна стратегия «Сначала сеть» в вашем Service Worker. Это задокументировано Джейком Арчибальдом для Google. Вы можете прочитать об этом здесь . Этот тип сервисного работника проверяет файлы в сети, прежде чем просматривать автономный кеш.

1 голос
/ 07 января 2020

Create React App использует набор библиотек Google Workbox для кэширования. Вы можете прочитать больше об этом на https://developers.google.com/web/tools/workbox.

В src\index.js вы найдете serviceWorker.register(). Регистр метода принимает config в качестве аргумента, который вы можете увидеть в src\serviceWorker.js, но я не смог найти, как этот аргумент структурирован (любая идея будет принята с благодарностью).

...