Interfejs wiersza poleceń Workbox (zawarty w pliku
workbox-cli) składa się z programu Node.js zwanego Workbox, który
można uruchamiać z poziomu systemu Windows lub macOS albo wiersza poleceń zgodnego z systemem UNIX.
dla środowiska. Funkcje Workbox-cli obejmują moduł Workbox-build
i zapewnia prosty sposób integracji Workbox z kompilacją wiersza poleceń
i zapewnia elastyczne konfiguracje.
Instalowanie interfejsu wiersza poleceń
Aby zainstalować interfejs wiersza poleceń z węzłem, uruchom w terminalu to polecenie:
npm install workbox-cli --global
Tryby interfejsu wiersza poleceń
Interfejs wiersza poleceń ma 4 różne tryby:
wizard: szczegółowy przewodnik konfigurowania aplikacji Workbox w projekcie.generateSW: generuje dla Ciebie kompletny skrypt service worker.injectManifest: wstawia zasoby do wstępnego buforowania w projekcie.copyLibraries: skopiuj biblioteki Workbox do katalogu.
wizard
Kreator Workbox zadaje serię pytań dotyczących katalogu lokalnego
konfiguracja i pliki do wstępnego buforowania. Twoje odpowiedzi są wykorzystywane, aby
aby wygenerować plik konfiguracji, którego można potem użyć
Tryb generateSW.
Większość programistów musi uruchomić kreatora modułów tylko raz, a Ty możesz ręcznie dostosować wygenerowany plik konfiguracji początkowej, przy użyciu dowolnej z obsługiwanych opcji konfiguracji kompilacji.
Aby uruchomić kreator:
npx workbox-cli wizard

generateSW
Za pomocą interfejsu wiersza poleceń Workbox możesz wygenerować pełny skrypt service worker za pomocą plik konfiguracji (np. wygenerowany przez kreatora).
Wystarczy uruchomić to polecenie:
npx workbox-cli generateSW path/to/config.js
Deweloperzy, którzy są zadowoleni z wbudowanego wstępnego buforowania i pamięci podręcznej środowiska wykonawczego Workbox
swoich możliwości i nie muszą dostosowywać działania skryptu service worker
zalecamy użycie trybu generateSW.
Kiedy używać funkcji generateSW
- Chcesz umieścić pliki w pamięci podręcznej.
- Masz proste potrzeby buforowania środowiska wykonawczego.
Kiedy NIE używać generateSW
- Chcesz używać innych funkcji skryptu Service Worker (np. Web Push).
- Chcesz zaimportować dodatkowe skrypty lub zastosować dodatkowe funkcje logiczne dla niestandardowych strategii buforowania.
injectManifest
Dla deweloperów, którzy chcą mieć większą kontrolę nad ostatecznym plikiem service worker
może używać trybu injectManifest. W tym trybie zakładamy, że masz
istniejącego pliku skryptu service worker, którego lokalizacja jest określona w pliku config.js.
Uruchamiane polecenie workbox injectManifest szuka określonego ciągu znaków
(domyślnie precacheAndRoute(self.__WB_MANIFEST)) w Twoim źródle
. Zastępuje pustą tablicę listą
Adresy URL do wstępnego buforowania i zapisywania pliku service worker w
lokalizację docelową, zgodnie z opcjami konfiguracji w usłudze config.js.
Reszta kodu skryptu service worker źródłowej pozostanie niezmieniona.
Z aplikacji Workbox możesz korzystać w tym trybie:
npx workbox-cli injectManifest path/to/config.js
Kiedy używać funkcji injectManifest
- Chcesz mieć większą kontrolę nad skryptem service worker.
- Chcesz umieścić pliki w pamięci podręcznej.
- Musisz dostosować routing i strategie.
- Chcesz używać skryptu service worker z innymi funkcjami platformy (np. Web Push).
Kiedy NIE używać injectManifest
- Chcesz najprościej dodać do witryny skrypt service worker.
copyLibraries
Ten tryb jest przydatny, jeśli chcesz korzystać z usługi injectManifest i wykonywać
wolisz używać plików biblioteki Workbox hostowanych w Twoim źródle
korzystania z sieci CDN.
Wystarczy uruchomić go ze ścieżką, w której będą zapisywane pliki:
npx workbox-cli copyLibraries third_party/workbox/
Integracja procesu kompilacji
Dlaczego Workbox musi być zintegrowany z moim procesem Build?
Projekt Workbox zawiera wiele bibliotek, które współpracują ze sobą zwiększyć możliwości aplikacji internetowej skryptor service worker. Aby z nich możesz skutecznie korzystać, dlatego aplikacja Workbox musi zostać zintegrowana w procesie tworzenia aplikacji internetowej. Dzięki temu mechanizm Service Worker będzie mógł pozwala skutecznie przechowywać w pamięci podręcznej wszystkie kluczowe treści aplikacji a ich zawartość jest aktualna.
Czy workbox-cli to właściwy wybór do mojego procesu tworzenia?
Jeśli masz istniejący proces kompilacji, który opiera się w całości
skrypty npm,
workbox-cli to dobry wybór.
Jeśli jako kompilacji używasz obecnie pakietu webpack a potem użyj workbox-webback-plugin to lepszy wybór.
Jeśli używasz obecnie Gulp, Grunt lub inne narzędzie do kompilacji oparte na Node.js, a następnie integrowanie komponentu workbox-build ze skryptem kompilacji. to lepszy wybór.
Jeśli w ogóle nie masz procesu kompilacji, musisz go wymyślić. przed użyciem Workbox do wstępnego buforowania zasobów. Próbuję ręczne uruchamianie interfejsu Workbox-cli może być podatne na błędy, może spowodować wyświetlanie nieaktualnych treści powracającym użytkownikom.
Instalacja i konfiguracja
Po zainstalowaniu pakietu workbox-cli jako wersji deweloperskiej
Twojego lokalnego projektu, możesz dodać wywołanie do workbox na stronie
koniec skryptu npm istniejącego procesu kompilacji:
Z pliku package.json:
{
"scripts": {
"build": "my-build-script && workbox <mode> <path/to/config.js>"
}
}
Zastąp <mode> elementem generateSW lub injectManifest (w zależności
zgodnie ze swoim przypadkiem użycia) i <path/to/config.js> ze ścieżką do
swoje opcje konfiguracji. Konfiguracja mogła zostać utworzona
automatycznie przez workbox wizard lub poprawione ręcznie.
Konfiguracja
Opcje używane przez aplikację generateSW
Pełny zestaw opcji konfiguracyjnych można znaleźć w dokumentacji referencyjnej.
Opcje używane przez aplikację injectManifest
Pełny zestaw opcji konfiguracyjnych można znaleźć w dokumentacji referencyjnej.