service-worker.js中未添加的.html页面被缓存,离线可用?

The .html page not added in service-worker.js is cached and is available offline?

我正在构建一个 PWA。出于测试目的,我添加了一个测试 .html 页面,该页面不在 sw.js 文件夹中并且不会被缓存(至少是我所期望的)。我还添加了一些测试外部 links。在 phone 上部署和安装之后。在离线模式下,外部 links 不会打开。但是 sw.js 中没有的测试页仍然会立即加载,这表明它也被缓存了。

有人可以解释这种行为吗?

相关信息:

sw.js 位于目录的根目录,其范围是整个目录。还缓存了测试页面 link 的页面。

如果您在根级别拥有范围,它将缓存它内部的所有内容...默认服务工作者助手 类 倾向于缓存所有 html、css 和范围内的 JS 文件。除非你 post 你的 SW 代码,否则不能说你的情况是否发生了其他不太可能的事情。

服务工作者特定于您的域和子域。所以很自然地,它不会缓存外部点赞,你已经体验过了。

在这两种情况下,Service Worker 似乎都按照预期的方式工作。