이 시점에서 서비스 워커는 까다로워 보일 수 있습니다. 복잡한 상호작용은 많지만 제대로 이해하기 어렵습니다. 네트워크 요청 캐싱 전략 캐시 관리 사전 캐싱 기억해야 할 것이 많습니다. 그렇다고 서비스 워커가 잘못 설계된 기술이 되는 것은 아닙니다. 서비스 워커는 의도한 대로 작동하고 어려운 문제를 해결해 줍니다.
훌륭한 추상화를 통해 복잡한 API를 더 쉽게 사용할 수 있습니다. 이때 Workbox가 필요합니다. Workbox는 일반적인 서비스 워커 라우팅 및 캐싱을 간소화하는 모듈 집합입니다. 사용 가능한 각 모듈은 서비스 워커 개발의 특정 측면을 다룹니다. Workbox의 목표는 서비스 워커를 최대한 쉽게 사용하는 동시에 필요한 경우 복잡한 애플리케이션 요구사항을 수용할 수 있는 유연성을 제공하는 것입니다.
가장 간단한 경우 workbox-build
는 지정된 애셋을 사전 캐시하는 서비스 워커를 생성할 수 있는 몇 가지 메서드를 제공합니다.
generateSW
메서드는 대부분의 작업을 즉시 실행하는 반면 injectManifest
메서드는 필요한 경우 더 많은 제어를 제공합니다.
고급 사용 사례의 경우 다른 모듈이 도움이 될 수 있습니다. 이러한 모듈은 다음과 같습니다.
workbox-routing
: 요청 일치를 나타냅니다.- 캐싱 전략을 위한
workbox-strategies
- 사전 캐싱을 위한
workbox-precaching
workbox-expiration
: 캐시 관리용workbox-window
:window context
에서 서비스 워커를 등록하고 업데이트를 처리합니다.
이러한 모듈과 다른 모듈은 서비스 워커 API를 직접 사용하는 것보다 더 쉽게 읽고 유지관리할 수 있는 선언적 방식으로 서비스 워커 코드를 작성하는 데 도움이 됩니다. 이 문서에서는 이를 응용 방식으로 사용하는 방법을 설명합니다.