Wszystkich czynności, które przeprowadziliśmy poza platformą window
, można by pomyśleć, że Cache
instancji jest dostępnych tylko w zakresie skryptu service worker. Faktem jest, że możesz uzyskiwać dostęp do Cache
instancjizarównow zakresie skryptu service worker , jak w tradycyjnym kodzie Twojej aplikacji internetowej, uruchamianych w window
. Ułatwia to użytkownikowi bezpośrednią interakcję z pamięcią podręczną skryptu service worker lub aktualizowanie interfejsu na podstawie stanu pamięci podręcznej.
Jednym z możliwych zastosowań jest oferowanie funkcji zapisywania w trybie offline w przypadku stron, które użytkownicy mogą chcieć przeczytać później, ale pamiętaj, że mogą być wtedy offline. Poniższy przykładowy fragment kodu Glitch pokazuje, jak to zrobić w Workbox.
W umieszczonej powyżej kodzie widać, że po kliknięciu przycisku „Zapisz w trybie offline” skrypt app.js
zapisuje w pamięci podręcznej offline z kontekstu window
. W skrypcie service worker zasoby statyczne strony są zapisywane w pamięci podręcznej, aby umożliwić dostęp offline. Strategia NetworkOnly
jest używana ze specjalnym modułem obsługi, który zarządza dostępem offline do stron w pamięci podręcznej, i jest przekazywana do elementu NavigationRoute
.
Aby przetestować działanie osadzonej strony typu Glitch, wykonaj te czynności:
- Otwórz nowe okno przeglądarki i wejdź na https://save-for-offline-test.glitch.me/
- Kliknij przycisk Dodaj do listy Do przeczytania.
- Otwórz narzędzia dla programistów w przeglądarce w Firefoksie lub Chrome. Jeśli używasz Chrome, otwórz panel aplikacji. W Firefoksie otwórz panel pamięci.
- W narzędziach dla programistów w każdej z tych przeglądarek w panelu po lewej stronie znajduje się pozycja Pamięć podręczna. Kliknij, aby ją rozwinąć. W sekcji pamięć podręczna offline powinien być widoczny adres URL strony dodanej przed chwilą w panelu po prawej stronie.
- Kliknij link do dowolnej innej strony u dołu strony.
- Przełączaj tryb offline w dowolnej z przeglądarek, aby symulować połączenie offline.
- Kliknij link do strony dodanej do pamięci podręcznej offline. Powinna się pojawić, nawet jeśli jesteś offline.
- Kliknij link do strony, która nie została dodana do pamięci podręcznej offline. Prośba zostanie odrzucona.
To nie jest jedyny przypadek użycia podczas pracy z instancjami Cache
w interfejsie window
. Możesz na przykład korzystać z prognozowanego pobierania z wyprzedzeniem i buforowania zasobów, których użytkownik będzie musiał wykonać określone działanie. Pozwoli to zmniejszyć lub uniknąć opóźnień przy pobieraniu takich zasobów na żądanie.
Istnieją inne potencjalnie przydatne przypadki użycia, a ponieważ gdy nie ma skryptu service worker, możesz wchodzić w interakcję z instancjami Cache
, więc nie wszystkie z nich wymagają instalacji.