我使用带有sw-toolbox库的服务人员。我的 PWA 缓存除了 API 查询(图像、css、js、html)之外的所有内容。但是,如果有一天某些文件会被更改怎么办。或者如果 service-worker.js 将被更改怎么办。应用程序应该如何知道文件的变化?
我的 service-worker.js:
'use strict';
importScripts('./build/sw-toolbox.js');
self.toolbox.options.cache = {
name: 'ionic-cache'
};
// pre-cache our key assets
self.toolbox.precache(
[
'./build/main.js',
'./build/main.css',
'./build/polyfills.js',
'index.html',
'manifest.json'
]
);
// dynamically cache any other local assets
self.toolbox.router.any('/*', self.toolbox.cacheFirst);
// for any other requests go to the network, cache,
// and then only use that cached resource if your user goes offline
self.toolbox.router.default = self.toolbox.networkFirst;
我不知道在 PWA 中更新缓存的常用方法是什么。也许 PWA 应该在后台发送 AJAX 请求并检查 UI 版本?