删除服务工作进程缓存崩溃



我已将以下(示例(代码添加到我的应用程序(Angular 应用程序,适用于任何 JS 应用程序(以删除服务工作者缓存:

if ('serviceWorker' in navigator) {
    if ('caches' in window) {
        caches.keys().then((keyList) => {
            return Promise.all(keyList.map(function (key) {
                return caches.delete(key);
            }));
        });
    }
}

但是对于某些使用适用于Windows的Chrome 72及更高版本的用户,我经常收到崩溃报告,并显示以下错误:

TypeError · undefined is not a function

对于函数

caches.keys

任何人都知道为什么会发生这种情况。

keys 方法仅在 Cache 对象上找到。

您可以从cache.open函数获取缓存对象。

用法示例:

caches.open(name).then(function(cache) {
  cache.keys().then(function(keys) {
    //Do something with keys
  });
})

最新更新