and*_*cwk 7 angular angular-service-worker
我有一个问题,Angular Service Worker 返回旧版本的 index.html(从 Service Worker 安装之日起),这让我发疯!
基本上在浏览器(chrome)的新启动时,旧的 index.html 由服务工作者提供服务,导致加载一个失效的 mainxxx.js 并且由于 IIS 重写规则,我在玩以支持深度链接 mainxxx.js返回 index.html 的内容(服务工作者首先返回错误的 index.html 的副作用)
当我软刷新或硬刷新浏览器选项卡时,会加载正确的 index.html 并且一切正常……也就是说,直到我关闭浏览器并重新开始,然后再次提供旧的 index.html :O
正如您从下面的屏幕截图中看到的(对编辑感到抱歉),我已经通过缓存控制标头关闭了缓存。
使事情复杂化......当我查看开发工具中的“应用程序”选项卡时,我可以看到不同版本(我猜)的缓存的多个实例,一个是旧的 index.html,另一个是新版本缓存!
虽然我了解服务工作者的一般想法,但我迷失在 angular service worker 提供的所有代码中,所以如果有好心的人能指出对我有帮助的解决方案的方向,我会很高兴的 :)
谢谢!
===== 根据要求,我的 ngsw-config.json 是标准的开箱即用版本..
{
"index": "/index.html",
"assetGroups": [{
"name": "app",
"installMode": "prefetch",
"resources": {
"files": [
"/favicon.ico",
"/index.html",
"/*.css",
"/*.js"
]
}
}, {
"name": "assets",
"installMode": "lazy",
"updateMode": "prefetch",
"resources": {
"files": [
"/assets/**"
]
}
}]
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
679 次 |
| 最近记录: |