我想将我的应用程序发布为PWA,所以我做的是
将此脚本插入index.html
<!--script>
if ('serviceWorker' in navigator) {
navigator.serviceWorker.register('service-worker.js')
.then(() => console.log('service worker installed'))
.catch(err => console.log('Error', err));
}
</script-->
然后安装
npm run ionic:build --prod
它看起来像部署它但我的问题是:
为什么当我在应用程序中更改某些内容并运行离子服务时,没有任何更改,它只在WWW文件夹的index.html中更改?为什么?(因为现在是PWA?)
当我打开www文件夹并运行打开index.html时,按下打开警告对话框的按钮,它不会打开。为什么呢?
答案 0 :(得分:16)
运行
ionic cordova platform add browser
ionic build browser --prod --release
然后转到[project_folder]/platforms/browser/www
并将内容复制到http服务器。
答案 1 :(得分:10)
不要为Cordova打扰PWA。只需使用npm run build --prod
并上传/www
文件夹即可。
PWA更像是一系列概念,所以它不只是&#34;在&#34;或&#34;关闭&#34;。至少你可能想要添加一个清单文件,这样你可以更多地使用#34; app喜欢&#34;通过隐藏浏览器框架,设置你的图标,应用程序名称等。如果你没有放任何东西&#34;有用的话,取消注释添加服务工作者的行并不会神奇地使它成为PWA。进入服务工作者(您可能需要或可能不需要这样做,具体取决于您的应用程序的工作方式)。另请注意,您将需要HTTPS才能使用服务工作者。
您还需要手动删除index.html中包含cordova.js的行(如果您只是上传/ www,则会出现404错误)。
答案 2 :(得分:0)
我使用此命令来构建Web应用
ionic cordova build browser
然后将内容从IONIC-PROJECT / platforms / browser / www复制到Web服务器。