javascript – Service Worker安装失败:“无法读取属性’addAll of undefined”

前端之家收集整理的这篇文章主要介绍了javascript – Service Worker安装失败:“无法读取属性’addAll of undefined”前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
所以我会保持简洁:在尝试安装时,我的服务工作者会失败.这是我在sw.js中的所有代码
var cacheName = 'randomstring';
var filesToCache = [ '/' ];

self.addEventListener('install',function (e) {
    console.log('[ServiceWorker] Install');
    e.waitUntil(
        caches.open(cacheName)
            .then(function (cache) {
                console.log('[ServiceWorker] About to fail');
                return cache.addAll(filesToCache);
            })
    );
});

我得到一个例外,因为缓存未定义(在cache.addAll位上).

不确定为什么会这样?

我之前使用过服务工作者,从未遇到过这个问题.这是我第一次使用带有ASP.Net后端的服务工作者,所以不确定这是不是问题?

解决方法

所以,我想出来了.我打算投票来结束这个问题,但我想我会把它留在这里,因为我看到其他一些人不知道如何解决这个问题.即使它是超级愚蠢的:)(或者更确切地说,我是).

所以我通过“播放”按钮运行网站,也就是“开始调试”,在Visual Studio 2017中,它会启动一个特殊的Chrome窗口,其中会抛出上述错误.

解决这个问题,我可以(或者你可以,未来的网络旅行者)在没有调试的情况下开始,在IIS中托管网站等.

编辑:如果有一个更好的解决方法,我可以在调试模式下使用服务工作者,请建议它,我会将其标记为答案.但是对于我的具体问题,上面的解决方法很好:).

猜你在找的JavaScript相关文章