Service Worker 是什么?
后台运行脚本,实现离线功能。
注册
1 | if ('serviceWorker' in navigator) { |
生命周期
- Install
- Activate
- Fetch
缓存策略
1 | self.addEventListener('fetch', event => { |
总结
Service Worker 让应用离线可用。
缓存策略比较
- Cache First
- Network First
- Cache Only
- Network Only
- Stale-while-revalidate
1 | self.addEventListener('fetch', event => { |
使用 Workbox
Workbox 提供简洁 API:
1 | import { registerRoute } from 'workbox-routing'; |
更新与版本管理
- 修改
sw.js文件时,浏览器会重新安装 Service Worker。 - 使用
skipWaiting()和clients.claim()立即激活。
离线测试
- DevTools → Application → Service Workers → Offline 模式
- 使用
workbox-cli生成模版
限制与注意事项
- Service Worker 仅在 HTTPS 或 localhost 下可用
- 不能直�- 不能直�- 不能直�- 不能直�- 不能直�- 不能直�- 不### �- 不能直�- 不胿阅�- 不能直�WA- 不能直�缓存
总结
Service WorService WorServ�线缓存�Servi送通知的核心,但需要谨慎设计缓存策略,以及正确管理版本和更新流程。
离线缓存补充行 1
离线缓存补充行 2
离线缓存补充行 3
离线缓存补充行 4
离线缓存补充行 5
离线缓存补充行 6
离线缓存补充行 7
离线缓存补充行 8
离线缓存补充行 9
离线缓存补充行 10
离线缓存补充行 11
离线缓存补充行 12
离线缓存补充行 13
离线缓存补充行 14
离线缓存补充行 15
离线缓存补充行 16
离线缓存补充行 17
离线缓存补充行 18
离线缓存补充行 19
离线缓存补充行 20
离线缓存补充行 21
离线缓存补充行 22
离线缓存补充行 23
离线缓存补充行 24
离线缓存补充行 25
离线缓存补充行 26
离线缓存补充行 27
离线缓存补充行 28
离线缓存补充行 29
离线缓存补充行 30
离线缓存补充行 31
离线缓存补充行 32
离线缓存补充行 33
离线缓存补充行 34
离线缓存补充行 35
离线缓存补充行 36
离线缓存补充行 37
离线缓存补充行 38
离线缓存补充行 39
离线缓存补充行 40
离线缓存补充行 41
离线缓存补充行 42
离线缓存补充行 43
离线缓存补充行 44
离线缓存补充行 45
离线缓存补充行 46
离线缓存补充行 47
离线缓存补充行 48
离线缓存补充行 49
离线缓存补充行 50
离线缓存补充行 51
离线缓存补充行 52
离线缓存补充行 53
离线缓存补充行 54
离线缓存补充行 55
离线缓存补充行 56
离线缓存补充行 57
离线缓存补充行 58
离线缓存补充行 59
离线缓存补充行 60
离线缓存补充行 61
离线缓存补充行 62
离线缓存补充行 63
离线缓存补充行 64
离线缓存补充行 65
离线缓存补充行 66
离线缓存补充行 67
离线缓存补充行 68
离线缓存补充行 69
离线缓存补充行 70