35 lines
1.0 KiB
JavaScript
35 lines
1.0 KiB
JavaScript
importScripts('https://storage.googleapis.com/workbox-cdn/releases/6.4.1/workbox-sw.js');
|
|
|
|
// Only import the modules you need; skip precaching and routing if not needed
|
|
workbox.core.skipWaiting();
|
|
workbox.core.clientsClaim();
|
|
|
|
//workbox.precaching.cleanupOutdatedCaches();
|
|
//disable precaching
|
|
workbox.precaching.precacheAndRoute(self.__WB_MANIFEST);
|
|
|
|
module.exports = {
|
|
// Other webpack config...
|
|
plugins: [
|
|
// Other plugins...
|
|
new InjectManifest({
|
|
// These are some common options, and not all are required.
|
|
// Consult the docs for more info.
|
|
exclude: [/.../, '...'],
|
|
maximumFileSizeToCacheInBytes: 1 * 1024 * 1024,
|
|
swSrc: './worker/index.js',
|
|
}),
|
|
],
|
|
};
|
|
|
|
// Example: Set up push notification handling
|
|
self.addEventListener('push', event => {
|
|
const data = event.data.json();
|
|
event.waitUntil(
|
|
self.registration.showNotification(data.title, {
|
|
body: data.message,
|
|
icon: '/path/to/icon.png'
|
|
})
|
|
);
|
|
});
|