如何利用@angular/cli V6.0直接开发PWA应用详解
什么是pwa
pwa(progressive web app)利用tls,webapp manifests和service workers使应用程序能够安装并离线使用。 换句话说,pwa就像手机上的原生应用程序,但它是使用诸如html5,javascript和css3之类的网络技术构建的。 如果构建正确,pwa与原生应用程序无法区分。
pwa 的主要特点包括下面三点:
- 可靠 - 即使在不稳定的网络环境下,也能瞬间加载并展现
- 体验 - 快速响应,并且有平滑的动画响应用户的操作
- 粘性 - 像设备上的原生应用,具有沉浸式的用户体验,用户可以添加到桌面
pwa 本身强调渐进式,并不要求一次性达到安全、性能和体验上的所有要求,开发者可以通过 pwa checklist 查看现有的特征。
angular正式发布了v6.0,我们已经可以利用对应的@angular/cli v6.0来直接开发pwa应用了。下面话不多说了,来一起看看详细的介绍吧。
第一步:安装@angular/cli v6.0
如果你机器上有老版本,请先卸载。
打开你的终端,执行:
npm install -g @angular/cli
安装成功之后用ng -v 查看一下版本号:
第二步:new一个空项目
执行:
ng new test-ng-pwa
创建成功之后把项目起来看一下,执行:
ng serve --open
浏览器里面看到这个界面说明一切ok:
第三步:添加pwa支持
把项目停掉,然后在终端里面执行:
ng add @angular/pwa
效果如下:
因为@angular/cli内置的server在--prod 编译的时候还不支持service-worker,所以上面装了一个第三方的lite-server,它的官方文档在这里: ,请执行:
npm install lite-server --save-dev npm install lite-server --global
装完之后,执行:
npx ng build --prod && lite-server --basedir dist/test-ng-pwa
然后打开你的浏览器访问3000端口,可以看到service-worker已经起成功了:
这时候你已经可以把应用添加到桌面上了:
这是windows上的效果:
linux、ios、android、chromeos最新的版本都已经全部支持,你自己去试试吧!
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对的支持。
上一篇: JS同步、异步、延迟加载的方法
下一篇: 探秘无线路由高级选项 化解IP地址冲突