use*_*042 5 angular-pwa service-worker-config
我遇到了与服务人员的问题。Service Worker 不会通过 app.module 自行注册。所以我在 main.ts 中手动注册它。它在在线模式下运行良好。但是当我将网络更改为离线模式时,出现 ngsw.json?ngsw-cache-bustfailing。任何解决方案都会有帮助。
主要.ts
platformBrowserDynamic().bootstrapModule(AppModule).then(() => {
if ('serviceWorker' in navigator && environment.production) {
navigator.serviceWorker.register('/ngsw-worker.js');
}
}).catch(err => console.log(err));
Run Code Online (Sandbox Code Playgroud)
ngsw-config.json
{
"$schema": "./node_modules/@angular/service-worker/config/schema.json",
"index": "/index.html",
"assetGroups": [
{
"name": "app",
"installMode": "prefetch",
"resources": {
"files": [
"/favicon.ico",
"/index.html",
"/manifest.webmanifest",
"/*.css",
"/*.js"
]
}
}, {
"name": "assets",
"installMode": "lazy",
"updateMode": "prefetch",
"resources": {
"files": [
"/assets/**",
"/*.(eot|svg|cur|jpg|png|webp|gif|otf|ttf|woff|woff2|ani)"
]
}
}
]
}
Run Code Online (Sandbox Code Playgroud)
我认为你的问题出在其他地方。你能展示一下ngsw-config.json文件吗?
在 DevTools 中,Service Worker 是否正确注册并处于活动状态?
离线时究竟是什么无法按预期工作?是否只是 ngsw.json 文件在尝试离线获取它时返回异常?
更新
您如何在网络清单中设置scope和属性?start_url使用新的 Angular CLI,这些值默认设置为"./"(注意点),而在以前的版本中,点缺失,并且在某些设置中导致路径问题。
即使可能不是您的情况,因为您可以将应用程序添加到主屏幕,这意味着一切都已正确设置。
| 归档时间: |
|
| 查看次数: |
7113 次 |
| 最近记录: |