如何解决Service Worker 不适用于 Azure 静态 Web 应用上的自定义域
我目前正在尝试让 PWA 功能在 Azure 静态 Web 应用上托管的 Angular 应用上运行。我遇到了一个问题,即 Service Worker 是为 xx.azurestaticapps.net 注册的,但不是为我添加的自定义域注册的。
清单
{
"name": "App Name","short_name": "Name","theme_color": "#09559D","background_color": "#09559D","display": "standalone","scope": "./","start_url": "./","icons": [
..omitted
]
}
静态 Web 应用配置文件
{
"navigationFallback": {
"rewrite": "index.html","exclude": ["/assets/*.{png,jpg,gif}","*.css"]
},"mimeTypes": {
"json": "application/json","webmanifest": "application/manifest+json"
}
}
有没有人知道可能导致这种情况的原因?
解决方法
确保您的构建在“生产”模式下运行。
默认情况下,Angular 仅为生产站点注册 Service Worker。
我遇到了同样的问题。就我而言,Microsoft 构建器“Oryx”运行“yarn build”来构建应用程序,但该脚本没有“--prod”标志。
变化
package.json
来自
"scripts": {
"start": "ng serve","build": "ng build",[...]
},
到
"scripts": {
"start": "ng serve","build": "ng build --prod",
为我解决了问题。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。