@danieldx/register-service-worker
TypeScript icon, indicating that this package has built-in type declarations

1.6.0 • Public • Published

register-service-worker

A script to simplify service worker registration with hooks for common events.

Usage

Note: this script uses ES modules export and is expected to be used with a client side bundler that can handle ES modules syntax.

import { register } from 'register-service-worker'

/**
 * immediate: If you registered after the onload event, you can set immediate to true. false means auto registered in onload event handler
 */ 
register('/service-worker.js', { scope: '/', immediate: false }, {
  ready (registration) {
    console.log('Service worker is active.')
  },
  registered (registration) {
    console.log('Service worker has been registered.')
  },
  cached (registration) {
    console.log('Content has been cached for offline use.')
  },
  updatefound (registration) {
    console.log('New content is downloading.')
  },
  updated (registration) {
    console.log('New content is available; please refresh.')
  },
  offline () {
    console.log('No internet connection found. App is running in offline mode.')
  },
  error (error) {
    console.error('Error during service worker registration:', error)
  }
})

The ready, registered, cached, updatefound and updated events passes a ServiceWorkerRegistration instance in their arguments.

Readme

Keywords

Package Sidebar

Install

npm i @danieldx/register-service-worker

Weekly Downloads

2

Version

1.6.0

License

MIT

Unpacked Size

65.3 kB

Total Files

8

Last publish

Collaborators

  • daniel-dx