PWA技术深入学习
PWA技术
PWA全称Progressive Web App,即渐进式WEB应用。
解决的问题
- 实现离线缓存功能,即使用户手机没有网络,依然可以使用一些离线功能
- 可以添加至主屏幕,点击主屏幕图标可以实现启动动画以及隐藏地址栏
- 实现了消息推送
service worker
-
必须要https,除了127.0.0.1
-
html要设置为每次都response.clone(),这样html每次更新可以及时生效
-
除了配置的每次会更新外,其他的不设置,如果配置文件发生修改(例如manifest.json)要修改sw的版本号
更新缓存
manifest.json
当manifest.json更新的时候需要更新sw的版本号,
手机上操作不流畅,经常出现不能添加到桌面,Chrome浏览器,华为手机(未来会变好)
主屏幕上添加的快速入口能够及时随页面更新
推送
依赖的GCM服务在国内无法使用
- 注册push
const subscribeOptions = {
userVisibleOnly: true,
applicationServerKey: urlBase64ToUint8Array(
'BEl62iUYgUivxIkv69yViEuiBIa-Ib9-SkvMeAtA3LFgDzkrxZJjSgSnfckjBJuBkr3qBUYIHBQFLXYp5Nksh8U'
)
};
registration.pushManager.subscribe(subscribeOptions);
推荐Service Worker配置:https://www.cnblogs.com/yiyi17/p/10975301.html
你要觉得这篇文章比较好,记得点推荐!
标签:
工程化工具
, JavaScript
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通