我在服务工作者中运行了一些代码,用于刷新当前缓存的资源:
const RESOURCE_CACHE = 'resources-v1';
caches.open(RESOURCE_CACHE).then(function addUrlsToCache(cache) {
return cache.addAll([
'/resources/style.css',
'/resources/fonts/led',
'/resources/script.js',
'/img/roundel-tube.png',
'/img/roundel-dlr.png',
'/img/roundel-overground.png',
]);
}).catch(function (error) {
console.error("Failed to cache resources:", error.message);
})
要测试错误处理,我会禁用开发服务器并再次运行此客户端代码。在这种情况下,我希望看到一条错误消息:Failed to cache resources: Failed to fetch
。但我实际上看到这一段代码有7条错误消息:
这对我来说很困惑,因为我认为他们在这里使用承诺的方式会处理其他6,所以他们永远不会冒泡到控制台。我需要采取哪些不同的方式,以便控制台永远不会显示我在代码中处理的网络错误?
答案 0 :(得分:1)
根据a bug @wOxOm发布的链接,我发现了a helpful comment:
在Chrome中,您可以点击过滤器图标,然后点击"隐藏网络消息"。
虽然它比我喜欢的那么重(因为它适用于当前页面上的所有网络流量),但它似乎是实现我所期望的最佳方式适用于当前版本的Chrome。
答案 1 :(得分:0)