Angular 错误:未捕获(承诺中):TypeError:注册ServiceWorker失败
我们有一个PWA,它已经工作了很长一段时间,但现在似乎该应用程序在注册服务人员时遇到了问题。我们使用的是Angular 7,而Angular 错误:未捕获(承诺中):TypeError:注册ServiceWorker失败,angular,typescript,service-worker,progressive-web-apps,angular7,Angular,Typescript,Service Worker,Progressive Web Apps,Angular7,我们有一个PWA,它已经工作了很长一段时间,但现在似乎该应用程序在注册服务人员时遇到了问题。我们使用的是Angular 7,而ngsw worker.js不在build文件夹中输出。控制台中的错误是: 错误:未捕获(承诺中):TypeError:注册ServiceWorker失败:获取脚本时收到错误的HTTP响应代码(404) 我们正在core.module.ts中注册服务人员,如下所示: ServiceWorkerModule.register('ngsw-worker.js', { enab
ngsw worker.js
不在build文件夹中输出。控制台中的错误是:
错误:未捕获(承诺中):TypeError:注册ServiceWorker失败:获取脚本时收到错误的HTTP响应代码(404)
我们正在core.module.ts
中注册服务人员,如下所示:
ServiceWorkerModule.register('ngsw-worker.js', { enabled: environment.production })
{
"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/**"
]
}
}
]
}
我们的ngsw-config.json如下所示:
ServiceWorkerModule.register('ngsw-worker.js', { enabled: environment.production })
{
"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/**"
]
}
}
]
}
ngsw worker.js
文件应该在dist文件夹中显式输出,还是它是捆绑包的一部分?表明这是Angular的依赖性问题。那篇文章解决了我的问题,谢谢@JeffPosnick