我希望有人可以提供一些启示。
我有一个 PWA - 并将所有需要的静态资产存储在缓存中。一切正常。我在离线模式下测试 - 一切都很好。我在 iPhone 上进行测试并将手机置于飞行模式 - 一切都很好,UI 呈现,导航到离线可用元素都很好。我已经设置了 manager.storage.persist (因为我的应用程序可能不经常使用,并且我不希望 UI 中断,因为用户有一段时间没有使用它,当他们回来时,这很可能处于离线状态。所以我用过:
navigator.storage.persist().then(function(persistent) {
if (persistent)
console.log("Storage will not be cleared except by explicit user action");
else
console.log("Storage may be cleared by the UA under storage pressure.");
});
(在桌面上,我已经在控制台日志中验证了正确的消息出现,表明上面的代码没问题并且通过了正确的分支,尽管我无法访问 iPhone 中的控制台等)。
到目前为止,一切都很好。
但是,如果我关闭我的 iPhone - 然后将其打开 - 将其置于飞行模式 - 然后转到我的应用程序,由于某种原因,页面的 HTML 在那里,但所有支持文件(如 CSS 和图像)都没有呈现。
所以它似乎能够找到一些缓存的内容——但不是全部?
关于如何找到问题的任何想法或建议?