De workbox-build module kan worden geïntegreerd in een knooppuntgebaseerd bouwproces en kan een volledige servicemedewerker genereren, of gewoon een lijst met assets genereren die vooraf in de cache kunnen worden geplaatst en die binnen een bestaande servicemedewerker kunnen worden gebruikt.
 De twee modi die de meeste ontwikkelaars zullen gebruiken zijn generateSW en injectManifest . De antwoorden op de volgende vragen kunnen u helpen bij het kiezen van de juiste modus en configuratie.
Welke modus te gebruiken
 generateSW
 De generateSW -modus creëert een servicemedewerkerbestand voor u, aangepast via configuratie-opties, en schrijft dit naar schijf.
 Wanneer moet u generateSW gebruiken?
- U wilt bestanden vooraf in de cache plaatsen.
- U heeft eenvoudige runtime-cachebehoeften.
 Wanneer u generateSW NIET moet gebruiken
- U wilt andere Service Worker-functies gebruiken (bijvoorbeeld Web Push ).
- U wilt extra scripts importeren of extra logica toevoegen voor aangepaste cachingstrategieën.
 injectManifest
 De injectManifest -modus genereert een lijst met URL's die vooraf in de cache moeten worden geplaatst, en voegt dat precache-manifest toe aan een bestaand servicemedewerkerbestand. Anders blijft het bestand ongewijzigd.
 Wanneer injectManifest gebruiken?
- U wilt meer controle over uw servicemedewerker.
- U wilt bestanden vooraf in de cache plaatsen.
- U moet de routing en strategieën aanpassen.
- U wilt uw servicemedewerker gebruiken met andere platformfuncties (bijvoorbeeld Web Push ).
 Wanneer mag u injectManifest NIET gebruiken?
- U wilt de eenvoudigste manier om een servicemedewerker aan uw site toe te voegen.
 generateSW modus
 U kunt de generateSW modus gebruiken binnen een op knooppunten gebaseerd build-script, met behulp van de meest gebruikelijke configuratie-opties , zoals:
// Inside of build.js:
const {generateSW} = require('workbox-build');
// These are some common options, and not all are required.
// Consult the docs for more info.
generateSW({
  dontCacheBustURLsMatching: [new RegExp('...')],
  globDirectory: '...',
  globPatterns: ['...', '...'],
  maximumFileSizeToCacheInBytes: ...,
  navigateFallback: '...',
  runtimeCaching: [{
    // Routing via a matchCallback function:
    urlPattern: ({request, url}) => ...,
    handler: '...',
    options: {
      cacheName: '...',
      expiration: {
        maxEntries: ...,
      },
    },
  }, {
    // Routing via a RegExp:
    urlPattern: new RegExp('...'),
    handler: '...',
    options: {
      cacheName: '...',
      plugins: [..., ...],
    },
  }],
  skipWaiting: ...,
  swDest: '...',
}).then(({count, size, warnings}) => {
  if (warnings.length > 0) {
    console.warn(
      'Warnings encountered while generating a service worker:',
      warnings.join('\n')
    );
  }
  console.log(`Generated a service worker, which will precache ${count} files, totaling ${size} bytes.`);
});
Hierdoor wordt een servicemedewerker gegenereerd met precaching-instellingen voor alle bestanden die door uw configuratie worden opgehaald, en met de meegeleverde runtime-cacheregels.
Een volledige set configuratieopties vindt u in de referentiedocumentatie .
 injectManifest modus
 U kunt de injectManifest modus gebruiken binnen een op knooppunten gebaseerd build-script, met behulp van de meest gebruikelijke configuratie-opties , zoals:
// Inside of build.js:
const {injectManifest} = require('workbox-build');
// These are some common options, and not all are required.
// Consult the docs for more info.
injectManifest({
  dontCacheBustURLsMatching: [new RegExp('...')],
  globDirectory: '...',
  globPatterns: ['...', '...'],
  maximumFileSizeToCacheInBytes: ...,
  swDest: '...',
  swSrc: '...',
}).then(({count, size, warnings}) => {
  if (warnings.length > 0) {
    console.warn(
      'Warnings encountered while injecting the manifest:',
      warnings.join('\n')
    );
  }
  console.log(`Injected a manifest which will precache ${count} files, totaling ${size} bytes.`);
});
Hiermee wordt een precache-manifest gemaakt op basis van de bestanden die door uw configuratie zijn opgehaald en in uw bestaande servicemedewerkerbestand geïnjecteerd.
Een volledige set configuratieopties vindt u in de referentiedocumentatie .
Extra modi
 We verwachten dat generateSW of injectManifest aan de behoeften van de meeste ontwikkelaars zal voldoen. Er is echter nog een andere modus die wordt ondersteund door workbox-build en die geschikt kan zijn voor bepaalde gebruiksscenario's.
 getManifest modus
 Dit is conceptueel vergelijkbaar met de injectManifest -modus, maar in plaats van het manifest toe te voegen aan het werkbestand van de bronservice, retourneert het de reeks manifestitems, samen met informatie over het aantal vermeldingen en de totale grootte.
 U kunt de injectManifest modus gebruiken binnen een op knooppunten gebaseerd build-script, met behulp van de meest gebruikelijke configuratie-opties , zoals:
// Inside of build.js:
const {getManifest} = require('workbox-build');
// These are some common options, and not all are required.
// Consult the docs for more info.
getManifest({
  dontCacheBustURLsMatching: [new RegExp('...')],
  globDirectory: '...',
  globPatterns: ['...', '...'],
  maximumFileSizeToCacheInBytes: ...,
}).then(({manifestEntries, count, size, warnings}) => {
  if (warnings.length > 0) {
    console.warn(
      'Warnings encountered while getting the manifest:',
      warnings.join('\n')
    );
  }
  // Do something with the manifestEntries, and potentially log count and size.
});
Een volledige set configuratieopties vindt u in de referentiedocumentatie .
Soorten
BasePartial
Eigenschappen
- aanvullendeManifestEntries(string | ManifestEntry )[] optioneel Een lijst met vermeldingen die vooraf in de cache moeten worden opgeslagen, naast eventuele vermeldingen die worden gegenereerd als onderdeel van de buildconfiguratie. 
- dontCacheBustURLsMatchingRegExp optioneel Van assets die hieraan voldoen, wordt aangenomen dat ze een unieke versie hebben via hun URL, en zijn uitgesloten van de normale HTTP-cache-busting die wordt uitgevoerd bij het vullen van de pre-cache. Hoewel dit niet vereist is, wordt het aanbevolen dat als uw bestaande bouwproces al een [hash]-waarde in elke bestandsnaam invoegt, u een RegExp opgeeft die dit zal detecteren, omdat dit de bandbreedte die wordt verbruikt bij precaching zal verminderen.
- manifestTransformeertManifestTransform [] optioneel Een of meer functies die opeenvolgend worden toegepast op het gegenereerde manifest. Als modifyURLPrefixofdontCacheBustURLsMatchingook zijn opgegeven, worden de bijbehorende transformaties eerst toegepast.
- maximumFileSizeToCacheInBytesnummer optioneel Standaardwaarde is: 2097152 Deze waarde kan worden gebruikt om de maximale grootte te bepalen van bestanden die vooraf in de cache worden opgeslagen. Dit voorkomt dat u per ongeluk zeer grote bestanden vooraf in de cache plaatst die mogelijk per ongeluk overeenkomen met een van uw patronen. 
- wijzigURLPrefixobject optioneel Een objecttoewijzingsreeks wordt voorafgegaan door vervangende tekenreekswaarden. Dit kan worden gebruikt om bijvoorbeeld een padvoorvoegsel uit een manifestitem te verwijderen of toe te voegen als uw webhostinginstellingen niet overeenkomen met uw lokale bestandssysteeminstellingen. Als alternatief met meer flexibiliteit kunt u de optie manifestTransformsgebruiken en een functie opgeven die de vermeldingen in het manifest wijzigt met behulp van de logica die u opgeeft.Voorbeeldgebruik: // Replace a '/dist/' prefix with '/', and also prepend // '/static' to every URL. modifyURLPrefix: { '/dist/': '/', '': '/static', }
BuildResult
Type
 Weglaten < GetManifestResult "manifestEntries"
 > & bezwaar maken 
Eigenschappen
- bestandspadensnaar[] 
GeneratePartial
Eigenschappen
- babelPresetEnvTargetstekenreeks[] optioneel Standaardwaarde is: ["chroom >= 56"] De doelen die moeten worden doorgegeven aan babel-preset-envbij het transpileren van de servicemedewerkerbundel.
- cacheIdtekenreeks optioneel Een optionele ID die moet worden toegevoegd aan de cachenamen. Dit is vooral handig voor lokale ontwikkeling waarbij meerdere sites kunnen worden bediend vanuit dezelfde http://localhost:portoorsprong.
- opruimenVerouderde CachesBooleaans optioneel Standaardwaarde is: false Of Workbox al dan niet moet proberen precaches te identificeren en te verwijderen die zijn gemaakt door oudere, incompatibele versies. 
- klantenClaimBooleaans optioneel Standaardwaarde is: false Of de servicemedewerker al dan niet bestaande clients moet gaan beheren zodra deze worden geactiveerd. 
- directoryIndextekenreeks optioneel Als een navigatieverzoek voor een URL die eindigt op /niet overeenkomt met een vooraf in de cache opgeslagen URL, wordt deze waarde toegevoegd aan de URL en wordt deze gecontroleerd op een vooraf in de cache opgeslagen URL. Dit moet worden ingesteld op wat uw webserver gebruikt voor de directory-index.
- schakelDevLogs uitBooleaans optioneel Standaardwaarde is: false 
- negeerURLParametersOvereenkomendRegExp[] optioneel Alle namen van zoekparameters die overeenkomen met een van de RegExp in deze array worden verwijderd voordat wordt gezocht naar een precache-overeenkomst. Dit is handig als uw gebruikers URL's kunnen opvragen die bijvoorbeeld URL-parameters bevatten die worden gebruikt om de bron van het verkeer bij te houden. Indien niet opgegeven, is de standaardwaarde [/^utm_/, /^fbclid$/].
- importScriptstekenreeks[] optioneel Een lijst met JavaScript-bestanden die moeten worden doorgegeven aan importScripts()in het gegenereerde servicewerkerbestand. Dit is handig als u Workbox uw servicewerkerbestand op het hoogste niveau wilt laten maken, maar extra code wilt toevoegen, zoals een push-gebeurtenislistener.
- inlineWorkboxRuntimeBooleaans optioneel Standaardwaarde is: false Of de runtimecode voor de Workbox-bibliotheek moet worden opgenomen in de servicemedewerker op het hoogste niveau, of moet worden opgesplitst in een afzonderlijk bestand dat naast de servicemedewerker moet worden geïmplementeerd. Door de runtime gescheiden te houden, hoeven gebruikers de Workbox-code niet telkens opnieuw te downloaden wanneer uw servicemedewerker op het hoogste niveau verandert. 
- modustekenreeks optioneel Standaardwaarde is: "productie" Indien ingesteld op 'productie', wordt er een geoptimaliseerde servicemedewerkerbundel geproduceerd die foutopsporingsinformatie uitsluit. Als dit hier niet expliciet wordt geconfigureerd, wordt de waarde process.env.NODE_ENVgebruikt, en als dat niet lukt, valt deze terug naar'production'.
- tekenreeks optioneel - Standaardwaarde is: nul - Indien gespecificeerd, worden alle navigatieverzoeken voor URL's die niet vooraf in de cache zijn geplaatst, uitgevoerd met de HTML op de opgegeven URL. U moet de URL doorgeven van een HTML-document dat in uw precache-manifest staat vermeld. Dit is bedoeld voor gebruik in een Single Page App-scenario, waarin u wilt dat alle navigatie algemene App Shell HTML gebruikt. 
- RegExp[] optioneel - Een optionele reeks reguliere expressies die beperkt op welke URL's het geconfigureerde - navigateFallbackgedrag van toepassing is. Dit is handig als slechts een subset van de URL's van uw site moet worden behandeld als onderdeel van een Single Page App . Als zowel- navigateFallbackDenylistals- navigateFallbackAllowlistzijn geconfigureerd, heeft de weigeringslijst voorrang.- Opmerking : deze RegExps kunnen tijdens een navigatie worden geëvalueerd aan de hand van elke bestemmings-URL. Vermijd het gebruik van complexe RegExps , anders kunnen uw gebruikers vertragingen ondervinden bij het navigeren op uw site. 
- RegExp[] optioneel - Een optionele reeks reguliere expressies die beperkt op welke URL's het geconfigureerde - navigateFallbackgedrag van toepassing is. Dit is handig als slechts een subset van de URL's van uw site moet worden behandeld als onderdeel van een Single Page App . Als zowel- navigateFallbackDenylistals- navigateFallbackAllowlistzijn geconfigureerd, heeft de weigeringslijst voorrang.- Opmerking : deze RegExps kunnen tijdens een navigatie worden geëvalueerd aan de hand van elke bestemmings-URL. Vermijd het gebruik van complexe RegExps , anders kunnen uw gebruikers vertragingen ondervinden bij het navigeren op uw site. 
- Booleaans optioneel - Standaardwaarde is: false - Of navigatievoorladen wel of niet moet worden ingeschakeld in de gegenereerde servicemedewerker. Wanneer ingesteld op true, moet u ook - runtimeCachinggebruiken om een geschikte responsstrategie in te stellen die overeenkomt met navigatieverzoeken, en gebruik maken van het vooraf geladen antwoord.
- offlineGoogleAnalyticsbooleaans | GoogleAnalyticsInitializeOptions optioneel Standaardwaarde is: false Bepaalt of ondersteuning voor offline Google Analytics wel of niet moet worden opgenomen. Wanneer true, wordt de aanroep vaninitialize()vanworkbox-google-analyticstoegevoegd aan de door u gegenereerde servicemedewerker. Wanneer ingesteld op eenObject, wordt dat object doorgegeven aan deinitialize()aanroep, waardoor u het gedrag kunt aanpassen.
- runtimeCachingRuntimeCaching [] optioneel Wanneer u de buildtools van Workbox gebruikt om uw servicemedewerker te genereren, kunt u een of meer runtime-cachingconfiguraties opgeven. Deze worden vervolgens vertaald naar workbox-routing.registerRoute-aanroepen met behulp van de match- en handler-configuratie die u definieert.Zie de workbox-build.RuntimeCaching-documentatie voor alle opties. Het onderstaande voorbeeld toont een typische configuratie, waarbij twee runtime-routes zijn gedefinieerd:
- overslaanWachtenBooleaans optioneel Standaardwaarde is: false Of er een onvoorwaardelijke aanroep van skipWaiting()moet worden toegevoegd aan de gegenereerde servicemedewerker. Alsfalse, wordt in plaats daarvan eenmessagetoegevoegd, waardoor clientpagina'sskipWaiting()kunnen activeren doorpostMessage({type: 'SKIP_WAITING'})aan te roepen op een wachtende servicemedewerker.
- bronkaartBooleaans optioneel Standaardwaarde is: waar Of er een brontoewijzing moet worden gemaakt voor de gegenereerde servicemedewerkerbestanden. 
GenerateSWOptions
Type
GetManifestOptions
GetManifestResult
Eigenschappen
- graafnummer 
- manifestInvoeren
- maatnummer 
- waarschuwingensnaar[] 
GlobPartial
Eigenschappen
- globVolgenBooleaans optioneel Standaardwaarde is: waar Bepaalt of symlinks al dan niet worden gevolgd bij het genereren van het precache-manifest. Zie de definitie van followin deglob-documentatie voor meer informatie.
- globNegeerttekenreeks[] optioneel Standaardwaarde is: ["**\/node_modules\/**\/*"] Een set patronen die overeenkomen met bestanden die altijd moeten worden uitgesloten bij het genereren van het precache-manifest. Zie de definitie van ignorein deglob-documentatie voor meer informatie.
- globPatronentekenreeks[] optioneel Standaardwaarde is: ["**\/*.{js,wasm,css,html}"] Bestanden die overeenkomen met een van deze patronen worden opgenomen in het precache-manifest. Zie de globvoor meer informatie.
- globStriktBooleaans optioneel Standaardwaarde is: waar Als dit waar is, zal een fout bij het lezen van een directory bij het genereren van een precache-manifest ervoor zorgen dat de build mislukt. Als dit niet waar is, wordt de problematische directory overgeslagen. Zie de definitie van strictin deglob-documentatie voor meer informatie.
- templatedURL'sobject optioneel Als een URL wordt weergegeven op basis van logica op de server, kan de inhoud ervan afhankelijk zijn van meerdere bestanden of van een andere unieke tekenreekswaarde. De sleutels in dit object zijn door de server weergegeven URL's. Als de waarden een array van tekenreeksen zijn, worden ze geïnterpreteerd als globpatronen en wordt de inhoud van bestanden die overeenkomen met de patronen gebruikt om een unieke versie van de URL te maken. Indien gebruikt met een enkele tekenreeks, wordt deze geïnterpreteerd als unieke versiegegevens die u voor een bepaalde URL heeft gegenereerd.
InjectManifestOptions
Type
InjectPartial
Eigenschappen
- injectiepunttekenreeks optioneel Standaardwaarde is: "self.__WB_MANIFEST" De tekenreeks die in het swSrcbestand moet worden gevonden. Eenmaal gevonden, wordt het vervangen door het gegenereerde precache-manifest.
- swSrcsnaar Het pad en de bestandsnaam van het servicewerknemerbestand dat tijdens het bouwproces wordt gelezen, relatief ten opzichte van de huidige werkmap. 
ManifestEntry
Eigenschappen
- integriteittekenreeks optioneel 
- herzieningsnaar 
- URLsnaar 
ManifestTransform()
workbox-build.ManifestTransform(
manifestEntries: (ManifestEntry & object)[],
compilation?: unknown,
): Promise<ManifestTransformResult> | ManifestTransformResult
Type
functie
Parameters
- manifestInvoeren( ManifestEntry & object)[] - maatnummer 
 
- compilatieonbekend optioneel 
Retouren
- Belofte< ManifestTransformResult > | ManifestTransformResultaat 
ManifestTransformResult
Eigenschappen
- manifest( ManifestEntry & object)[] - maatnummer 
 
- waarschuwingentekenreeks[] optioneel 
OptionalGlobDirectoryPartial
Eigenschappen
- globDirectorytekenreeks optioneel De lokale map waarmee u globPatternswilt matchen. Het pad is relatief ten opzichte van de huidige map.
RequiredGlobDirectoryPartial
Eigenschappen
- globDirectorysnaar De lokale map waarmee u globPatternswilt matchen. Het pad is relatief ten opzichte van de huidige map.
RequiredSWDestPartial
Eigenschappen
- swDestsnaar Het pad en de bestandsnaam van het servicewerknemerbestand dat door het bouwproces wordt gemaakt, relatief ten opzichte van de huidige werkmap. Het moet eindigen op '.js'. 
RuntimeCaching
Eigenschappen
- begeleiderDit bepaalt hoe de runtime-route een antwoord genereert. Om een van de ingebouwde workbox-strategieste gebruiken, geeft u de naam ervan op, bijvoorbeeld'NetworkFirst'. Als alternatief kan dit een callback-functieworkbox-core.RouteHandlerzijn met aangepaste antwoordlogica.
- methodeHTTPMethode optioneel Standaardwaarde is: "GET" De HTTP-methode waarmee moet worden vergeleken. De standaardwaarde 'GET'is normaal gesproken voldoende, tenzij u expliciet'POST','PUT'of een ander type verzoek moet matchen.
- optiesobject optioneel - achtergrondSyncobject optioneel Als u dit configureert, wordt een workbox-background-sync.BackgroundSyncPlugin-instantie toegevoegd aan deworkbox-strategiesdie zijn geconfigureerd inhandler.- naamsnaar 
- optiesWachtrijopties optioneel 
 
- uitzendingUpdateobject optioneel Als u dit configureert, wordt een workbox-broadcast-update.BroadcastUpdatePlugin-instantie toegevoegd aan deworkbox-strategiesdie zijn geconfigureerd inhandler.- kanaalnaamtekenreeks optioneel 
- opties
 
- cacheNaamtekenreeks optioneel Indien opgegeven, wordt hierdoor de eigenschap cacheNamevan deworkbox-strategiesingesteld inhandler.
- cachebaar antwoordCacheableResponseOptions optioneel Als u dit configureert, wordt een workbox-cacheable-response.CacheableResponsePlugin-instantie toegevoegd aan deworkbox-strategiesdie zijn geconfigureerd inhandler.
- vervaldatumExpirationPluginOptions optioneel Als u dit configureert, wordt een workbox-expiration.ExpirationPlugin-instantie toegevoegd aan deworkbox-strategiesdie zijn geconfigureerd inhandler.
- haal Opties opRequestInit optioneel Als u dit configureert, wordt de waarde fetchOptionsdoorgegeven aan deworkbox-strategiesdie zijn geconfigureerd inhandler.
- matchOptionsCacheQueryOptions optioneel Als u dit configureert, wordt de matchOptionswaarde doorgegeven aan deworkbox-strategiesdie zijn geconfigureerd inhandler.
- netwerkTimeoutSecondennummer optioneel Indien opgegeven, wordt hiermee de eigenschap networkTimeoutSecondsingesteld van deworkbox-strategiesdie zijn geconfigureerd inhandler. Houd er rekening mee dat alleen'NetworkFirst'en'NetworkOnly'networkTimeoutSecondsondersteunen.
- plug-insWorkboxPlugin [] optioneel Als u dit configureert, kunt u een of meer Workbox-plug-ins gebruiken die geen "snelkoppelingsopties" hebben (zoals expirationvoorworkbox-expiration.ExpirationPlugin). De hier geleverde plug-ins worden toegevoegd aan deworkbox-strategiesdie zijn geconfigureerd inhandler.
- precacheFallbackobject optioneel Als u dit configureert, wordt een workbox-precaching.PrecacheFallbackPlugin-instantie toegevoegd aan deworkbox-strategiesdie zijn geconfigureerd inhandler.- fallbackURLsnaar 
 
- bereikAanvragenBooleaans optioneel Als u dit inschakelt, wordt een workbox-range-requests.RangeRequestsPlugin-instantie toegevoegd aan deworkbox-strategiesdie zijn geconfigureerd inhandler.
 
- urlPatroontekenreeks | RegExp | RouteMatchTerugbellen Dit overeenkomstcriterium bepaalt of de geconfigureerde handler een antwoord genereert voor verzoeken die niet overeenkomen met een van de vooraf in de cache opgeslagen URL's. Als er meerdere RuntimeCachingroutes zijn gedefinieerd, zal de eerste waarvan deurlPatternovereenkomt, degene zijn die reageert.Deze waarde wordt rechtstreeks toegewezen aan de eerste parameter die wordt doorgegeven aan workbox-routing.registerRoute. Het wordt aanbevolen om eenworkbox-core.RouteMatchCallback-functie te gebruiken voor de grootste flexibiliteit.
StrategyName
Enum
 "CacheEerste"   "Alleen cache"   "Netwerk eerst"   "Alleen netwerk"   "Verouderd terwijl opnieuw valideren" 
WebpackGenerateSWOptions
WebpackGenerateSWPartial
Eigenschappen
- importScriptsViaChunkstekenreeks[] optioneel Een of meer namen van webpack-chunks. De inhoud van deze chunks wordt opgenomen in de gegenereerde service worker, via een aanroep van importScripts().
- swDesttekenreeks optioneel Standaardwaarde is: "service-worker.js" De assetnaam van het servicemedewerkerbestand dat door deze plug-in is gemaakt. 
WebpackInjectManifestOptions
Type
WebpackInjectManifestPartial
Eigenschappen
- compileSrcBooleaans optioneel Standaardwaarde is: waar Indien true(de standaardinstelling), wordt hetswSrcbestand gecompileerd door webpack. Wanneerfalse, zal er geen compilatie plaatsvinden (en kunnenwebpackCompilationPluginsniet worden gebruikt.) Stel deze in opfalseals u het manifest in bijvoorbeeld een JSON-bestand wilt injecteren.
- swDesttekenreeks optioneel De assetnaam van het servicemedewerkerbestand dat door deze plug-in wordt gemaakt. Als u dit weglaat, wordt de naam gebaseerd op de swSrc-naam.
- webpackCompilationPluginselke [] optioneel Optionele webpackplug-ins die worden gebruikt bij het compileren van hetswSrcinvoerbestand. Alleen geldig alscompileSrctrueis.
WebpackPartial
Eigenschappen
- brokkentekenreeks[] optioneel Een of meer segmentnamen waarvan de overeenkomstige uitvoerbestanden moeten worden opgenomen in het precache-manifest. 
- uitsluiten(string | RegExp | functie)[] optioneel Een of meer specificaties die worden gebruikt om assets uit te sluiten van het precache-manifest. Dit wordt geïnterpreteerd volgens dezelfde regels als de standaard excludevanwebpack. Indien niet opgegeven, is de standaardwaarde[/\.map$/, /^manifest.*\.js$].
- sluitChunks uittekenreeks[] optioneel Een of meer segmentnamen waarvan de bijbehorende uitvoerbestanden moeten worden uitgesloten van het precache-manifest. 
- erbij betrekken(string | RegExp | functie)[] optioneel Een of meer specificaties die worden gebruikt om assets op te nemen in het precache-manifest. Dit wordt geïnterpreteerd volgens dezelfde regels als de standaard includeoptie vanwebpack.
- modustekenreeks optioneel Indien ingesteld op 'productie', wordt er een geoptimaliseerde servicemedewerkerbundel geproduceerd die foutopsporingsinformatie uitsluit. Als dit hier niet expliciet wordt geconfigureerd, wordt de modegebruikt die is geconfigureerd in de huidigewebpackcompilatie.
Methoden
copyWorkboxLibraries()
workbox-build.copyWorkboxLibraries(
destDirectory: string,
): Promise<string>
Hiermee kopieert u een reeks runtimebibliotheken die door Workbox worden gebruikt naar een lokale map, die naast uw servicewerknemersbestand moet worden geïmplementeerd.
Als alternatief voor het implementeren van deze lokale kopieën kunt u in plaats daarvan Workbox gebruiken via de officiële CDN-URL.
 Deze methode wordt aangeboden ten behoeve van ontwikkelaars die workbox-build.injectManifest gebruiken en die liever niet de CDN-kopieën van Workbox gebruiken. Ontwikkelaars die workbox-build.generateSW gebruiken, hoeven deze methode niet expliciet aan te roepen. 
Parameters
- destDirectorysnaar Het pad naar de bovenliggende map waaronder de nieuwe map met bibliotheken wordt gemaakt. 
Retouren
- Beloof<tekenreeks> - De naam van de nieuw gemaakte map. 
generateSW()
workbox-build.generateSW(
config: GenerateSWOptions,
): Promise<BuildResult>
Met deze methode wordt een lijst met URL's gemaakt die vooraf in de cache moeten worden geplaatst, ook wel een 'precache-manifest' genoemd, op basis van de opties die u opgeeft.
 Het bevat ook extra opties die het gedrag van de servicemedewerker configureren, zoals alle runtimeCaching -regels die hij zou moeten gebruiken.
 Op basis van het precache-manifest en de aanvullende configuratie schrijft het een kant-en-klaar servicewerkerbestand naar schijf op swDest .
// The following lists some common options; see the rest of the documentation
// for the full set of options and defaults.
const {count, size, warnings} = await generateSW({
  dontCacheBustURLsMatching: [new RegExp('...')],
  globDirectory: '...',
  globPatterns: ['...', '...'],
  maximumFileSizeToCacheInBytes: ...,
  navigateFallback: '...',
  runtimeCaching: [{
    // Routing via a matchCallback function:
    urlPattern: ({request, url}) => ...,
    handler: '...',
    options: {
      cacheName: '...',
      expiration: {
        maxEntries: ...,
      },
    },
  }, {
    // Routing via a RegExp:
    urlPattern: new RegExp('...'),
    handler: '...',
    options: {
      cacheName: '...',
      plugins: [..., ...],
    },
  }],
  skipWaiting: ...,
  swDest: '...',
});
Parameters
- configuratie
Retouren
- Belofte <BouwResultaat> 
getManifest()
workbox-build.getManifest(
config: GetManifestOptions,
): Promise<GetManifestResult>
Deze methode retourneert een lijst met URL's die u wilt precache, ook wel een 'precache-manifest' genoemd, samen met details over het aantal vermeldingen en hun grootte, op basis van de opties die u opgeeft.
// The following lists some common options; see the rest of the documentation
// for the full set of options and defaults.
const {count, manifestEntries, size, warnings} = await getManifest({
  dontCacheBustURLsMatching: [new RegExp('...')],
  globDirectory: '...',
  globPatterns: ['...', '...'],
  maximumFileSizeToCacheInBytes: ...,
});
Parameters
- configuratie
Retouren
- Beloof < GetManifestResult > 
getModuleURL()
workbox-build.getModuleURL(
moduleName: string,
buildType: BuildType,
): string
Parameters
- moduleNaamsnaar 
- bouwTypeBouwtype 
Retouren
- snaar 
injectManifest()
workbox-build.injectManifest(
config: InjectManifestOptions,
): Promise<BuildResult>
Met deze methode wordt een lijst met URL's gemaakt die vooraf in de cache moeten worden geplaatst, ook wel een 'precache-manifest' genoemd, op basis van de opties die u opgeeft.
 Het manifest wordt in het swSrc bestand geïnjecteerd en de tijdelijke aanduiding string injectionPoint bepaalt waar in het bestand het manifest moet komen.
 Het laatste servicemedewerkerbestand, met het geïnjecteerde manifest, wordt naar schijf geschreven op swDest .
 Met deze methode wordt uw swSrc bestand niet gecompileerd of gebundeld; het zorgt alleen voor het injecteren van het manifest. 
// The following lists some common options; see the rest of the documentation
// for the full set of options and defaults.
const {count, size, warnings} = await injectManifest({
  dontCacheBustURLsMatching: [new RegExp('...')],
  globDirectory: '...',
  globPatterns: ['...', '...'],
  maximumFileSizeToCacheInBytes: ...,
  swDest: '...',
  swSrc: '...',
});
Parameters
- configuratie
Retouren
- Belofte <BouwResultaat>