ion*_*van 13 webassembly progressive-web-apps asp.net-core blazor
我有一个 Blazor WASM PWA 应用程序,已在 IIS 上的托管服务上发布。我遇到的问题是有时应用程序不会在访问者的浏览器中更新。即他们看到的是旧版本的应用程序。
我知道应用程序缓存应该由 Service Worker 更新,因此您可能需要访问该网站一次,然后关闭浏览器并再次访问它才能获取更新的版本。然而,有时看起来缓存只是被搞乱了,无论如何,应用程序都不会更新。我找到的唯一解决方案是按 F12,转到“应用程序”选项卡并删除其中的所有内容 -> 这将强制再次下载应用程序的最新版本。
有谁知道发生了什么事以及我该如何解决这个问题?
js在 navigator.serviceWorker 对象中声明一个用于注册的文件。
/**
* Register Service Worker
*/
navigator.serviceWorker
.register('/***.js', { scope: '/' })
.then(() => {
console.log('Service Worker Registered');
});
Run Code Online (Sandbox Code Playgroud)
该 js 文件可以包含如下所示的缓存版本。
const CACHE_VERSION = 1.0.
Run Code Online (Sandbox Code Playgroud)
当代码更改时更新cache_version以强制刷新缓存。每当注册 *.js 文件发生更改时,浏览器都会将 Service Worker 更新到新版本。
const CACHE_VERSION = 1.1;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6990 次 |
| 最近记录: |