Ild*_*dar 13 javascript service-worker sw-toolbox ionic3
我使用带有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;
Run Code Online (Sandbox Code Playgroud)
我不知道在PWA中更新缓存的常用方法是什么.也许PWA应该在后台发送AJAX请求并检查UI版本?
AFAIK sw_toolbox 没有网络更新缓存策略。我想这确实是你想要的。您想要修改缓存网络竞赛策略 - > https://jakearchibald.com/2014/offline-cookbook/#cache-network-race 而不是只是让失败者消失,一旦网络响应,您将想要更新客户端。这个比较高级一点我有时间还是有时间在这里解释一下。我会向客户发布一条消息,让其知道有更新。您可能想提醒用户更新或只是强制更新。我不认为这是一种边缘情况,而是一种非常常见但高级的场景。我希望尽快发布更详细的解决方案。
归档时间: |
|
查看次数: |
8370 次 |
最近记录: |