Skip to content

Latest commit

 

History

History

plugin-sw-precache

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 

@pwa/plugin-sw-precache

PWA plugin for SW Precache

Install

$ npm install --save-dev @pwa/plugin-sw-precache

Usage

The plugin is recognized by and attached to @pwa/core automatically.

However, you must manually include the generated sw.js file into your bundle!

if (process.env.NODE_ENV === 'production') {
  if ('serviceWorker' in navigator) {
    navigator.serviceWorker.register('/sw.js');
  }
}

Note: For SW beginners, it's strongly recommended you use the above snippet!
However, it's not required to wrap registration in a NODE_ENV === 'production' check.

Config

Configurable via the precache key on your pwa.config.js file.

Default Config:

exports.precache = {
  minify: true,
  filename: 'sw.js',
  // stripPrefix: env.src
  navigateFallback: 'index.html',
  navigateFallbackWhitelist: [/^(?!\/__).*/],
  staticFileGlobsIgnorePatterns: [
    /\.git/,
    /\.DS_Store/,
    /^manifest.*\.js(?:on)?$/,
    /\.gz(ip)?$/,
    /\.map$/,
    /\.br$/
  ]
}

Available Options:

See Options for sw-precache-webpack-plugin.