使用 jhipster-6.2 生成的项目,我在将 Spring + Angular 应用程序转换为渐进式 Web 应用程序 (PWA) 时遇到了问题。我的 service-worker 成功注册,但一旦我的应用程序部署到生产环境就不会提供离线功能。在我的控制台中,我得到一个bad-precaching-response, 似乎至少是一个 CSS 文件。对于本地部署,缓存工作。
为了成功注册我的 service-worker,我取消了 serviceWorker 相关代码的注释,index.html以便我有这个:
<script>
if ('serviceWorker' in navigator) {
window.addEventListener('load', function() {
navigator.serviceWorker.register('/service-worker.js')
.then(function () {
console.log('Service Worker Registered');
});
});
}
</script>
Run Code Online (Sandbox Code Playgroud)
我通过 Workbox 插件成功生成了我的 service worker:
new WorkboxPlugin.GenerateSW({
clientsClaim: true,
skipWaiting: true
})
Run Code Online (Sandbox Code Playgroud)
manifest.webapp我的 webapp 目录中有我的:
{
"name": "<truncated>",
"short_name": "<truncated>",
"icons": [
<truncated>
],
"theme_color": "#000000",
"background_color": "#e0e0e0",
"start_url": ".",
"display": "standalone",
"orientation": "portrait"
} …Run Code Online (Sandbox Code Playgroud) jhipster webpack service-worker progressive-web-apps angular