工作箱:precacheController 清理错误

workbox: precacheController cleanup error

我正在 documentation 之后设置一个预缓存控制器。似乎工作正常,仅用于清理部分。

// Precache items
const precacheManifest = 
[
    {url: offlinePage, revision: '1.0.2'},
    {url: HomePage, revision: '1.0.2'},
    {url: './image/placeholder.png', revision: '1'},    
    {url: './manifest.json', revision: '1.0.1'},        
];

const precacheController = new workbox.precaching.PrecacheController(precacheName);
precacheController.addToCacheList(precacheManifest);

安装事件 工作正常并在安装时插入缓存。

/**
 * Install [Event]
 */
self.addEventListener('install', event => {
    console.log('install event.');
    event.waitUntil(precacheController.install());
});

问题在于 激活事件 它 returns 控制台中的错误:

Uncaught TypeError: precacheController.cleanup is not a function.

/**
 * Activate [Event]
 */
self.addEventListener('activate', event => {
    console.log('activate event.');
    event.waitUntil(precacheController.cleanup());
});

我的实现有什么问题? 我正在使用 Workbox 3.6.1

原来是precacheController.cleanup()调用了错误的方法。

最后一个正确的documentation:

/**
 * Activate [Event]
 */
self.addEventListener('activate', event => {
    console.log('activate event.');
    event.waitUntil(precacheController.activate());
});