pwa初探

作者: BrucelLi | 来源:发表于2020-03-11 17:18 被阅读0次

pwa项目初探

pwa简介

PWA(Progressive Web App)是一种理念,使用多种技术来增强web app的功能,可以让网站的体验变得更好,能够模拟一些原生功能,比如通知推送。在移动端利用标准化框架,让网页应用呈现和原生应用相似的体验

pwa优点

1、可以添加至主屏幕,点击主屏幕图标可以实现启动动画以及隐藏地址栏
2、实现离线缓存功能,即使用户手机没有网络,依然可以使用一些离线功能
3、实现了消息推送

pwa特点

1、运行于浏览器后台,不受页面刷新的影响,可以监听和截拦作用域范围内所有页面的 HTTP 请求。
2、网站必须使用 HTTPS。除了使用本地开发环境调试时(如域名使用 localhost)
3、单独的作用域范围,单独的运行环境和执行线程
4、不能操作页面 DOM。但可以通过事件机制来处理
5、事件驱动型服务线程

项目

基于vue-cli4.2,vue,ts开发的一款pwa应用。
代码ui借用了文章:[browse-exp开发到部署详细介绍](https://github.com/HolyZheng/BrowseExp/blob/master/document.md),在此特别感谢
 因为此文章不是教程,所以具体编码细节可以阅读源码,代码很少

运行项目

1、clone 代码
2、`cnpm install` 或者 `npm install`
3、`npm run serve`
4、然后就可以浏览器本地访问效果了
5、要完全体验pwa,需要部署到https的服务器上,因为数据是本地用json模拟的,所以可以直接部署,`npm run build` 后将product中的文件上传到服务器,然后直接访问路径下的index.html即可

验收pwa是否生效(必须是https)

1、推荐浏览器谷歌,版本大于70,本人测试浏览器版本 80.0.3987.132(正式版本) (64 位)   
2、在浏览器中打开部署的网站,如果完成应该会看到如下图
pwa001.png
3、如果上面已经显示正常,那么你应该可以看到下图的效果
pwa002.jpg
4、点击“浏览我们的实验吧”中打开,此时电脑桌面应该可以看到下图效果,浏览器会在左面生成一个快捷图标
pwa003.png

5、然后断开网络,点击上面生成的图标,此时就像没有断开网络一样,可以看到如下图

pwa004.png

最后是文章的代码链接

有兴趣的朋友可以 clone

相关文章

  • pwa初探

    pwa项目初探 pwa简介 pwa优点 pwa特点 项目 运行项目 验收pwa是否生效(必须是https) 5、然...

  • Service Workers

    PWA(Progressive Web App)初探总结Service Workers: 简介Web离线应用解决方...

  • PWA入门初探

    谷歌推出的PWA网页版APP,虽然还是有很多浏览器不兼容,例如Safari等,所以直接把PWA投入项目开发还言之尚...

  • Angular初探PWA

    所谓PWA是 Progressive Web App 的缩写,中文意思是 “渐进式 Web 应用”,PWA有与传统...

  • 金融壹账通前端H5技术周报(第十四期)

    本期导读:本期我为大家带来谷歌网页级APP应用PWA入门初探。语言基础专题为大家带来图片加载优化、前端处理大数据的...

  • PWA网页技术初探总结

    一、前言   大家都知道Native app体验确实很好,它也有一些缺点: 开发成本高(ios和安卓) 软件上线需...

  • PWA 初探与实践(1)

    最近比较忙,所以很少更新公众号,先说声抱歉。进来异常火热的微信小程序。从各大网站的招聘信息可以看出。 小程序之所以...

  • PWA架构【翻译】

    PWA系列: PWA简介【翻译】 PWA架构【翻译】 利用Service workders使得PWA支持离线工作【...

  • 利用Service workders使得PWA支持离线工作【翻译

    PWA: PWA简介【翻译】 PWA架构【翻译】 利用Service workders使得PWA支持离线工作【翻译...

  • 利用消息推送增强PWA用户粘度【翻译】

    PWA: PWA简介【翻译】 PWA架构【翻译】 利用Service workders使得PWA支持离线工作【翻译...

网友评论

      本文标题:pwa初探

      本文链接:https://www.haomeiwen.com/subject/hzqhjhtx.html