【发布时间】:2018-12-04 02:32:30
【问题描述】:
我生成了一个干净的 Angular6 项目并使用 ng add @angular/pwa 我得到了这个 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/**"
]
}
}
]
}
整个资产文件夹标记为“Service Worker Caching”,但可悲的现实表明这不是真实的:
我使用的 3 个图形文件(header-bg.jpg、list-border-red.svg 和list-border-green.svg)被标记为“来自 ServiceWorker”但是当我在智能手机上创建应用程序并断开 Internet 连接并打开应用程序时,是只有header-bg.jpg 可用。但是list-border-red.svg & list-border-green.svg 不能离线使用。
还显示了从“磁盘缓存”加载了 2 个图标,从 ftp 加载了一个的图形...这些文件也在 assets 文件夹中,为什么它们没有从 mServiceWorker 缓存? ServiceWorker 的东西是否可能在 Chrome 中被窃听?
该应用程序已经在线,可以在这里找到:https://expense-calculator.com/ 如果您需要它来重现我的问题,只需打开并进行自己的测试。
【问题讨论】:
标签: progressive-web-apps angular6 angular-service-worker pwa