+
95
-

什么是pwa?

什么是pwa?

它与传统的网页应用有啥区别?

网友回复

+
15
-

PWA(Progressive Web Apps,渐进式 Web 应用)运用现代的 Web API 以及传统的渐进式增强策略来创建跨平台 Web 应用程序。

要将一个普通网站转成PWA网站,只需要添加两个文件: manifest.json和service-worker.js

前者是对APP的说明,后者是我们进行cache操作的地方 manifest.json

在这个配置文件里我们可以定义: name: APP的名称 short_name: 被添加到桌面(相当于安装)后, app图标下面的名称 start_url: 打开应用时所处URL display: 指定成standlone就能显示的跟原生APP一样(没有浏览器导航栏之类的东西)

其他还有背景颜色和图标之类的,都是些简单的属性在MDN上查一下就完事了: https://developer.mozilla.org/en-US/docs/Web/Manifest service-worker.js(简称sw)

要用sw,首先要在index.html里对sw进行注册

if('serviceWorker' in navigator){
navigator.serviceWorker.register('/sw.js')
.then(reg => console.log('service worker registered'))
.catch(err => console.log('service worker not registered', err));
}

sw相当于一个安装器+拦截器,简单说下这个安装过程是怎么实现的: 每次执行navigator.serviceWorker.register('/sw.js')都会重新下载sw.js这个文件,就像每次打开网络游戏都要先检查更新登陆器一样, 然后登陆器会告诉我们是不是要下载安装补丁包。如果新下载的sw.js跟之前稍微有点不一样,我们的网站都会被认为是...

点击查看剩余70%

我知道答案,我要回答