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中托管网站等.

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

相关文章

前言 做过web项目开发的人对layer弹层组件肯定不陌生,作为l...
前言 前端表单校验是过滤无效数据、假数据、有毒数据的第一步...
前言 图片上传是web项目常见的需求,我基于之前的博客的代码...
前言 导出Excel文件这个功能,通常都是在后端实现返回前端一...
前言 众所周知,js是单线程的,从上往下,从左往右依次执行,...
前言 项目开发中,我们可能会碰到这样的需求:select标签,禁...