Speculation Rules API 为 PWA 提供无需 Service Worker 复杂性的即时导航
现代 PWA 可以使用声明式推测规则实现原生般的速度,而非复杂的 Service Worker 预取逻辑。
PWA 的新型性能原语
Service Worker 长期以来一直是离线缓存和预取的首选工具。Speculation Rules API 为导航速度提供了更简单、声明式的替代方案,浏览器可以自动优化。
对于 OpenPWA 的列表页和详情页,这意味着用户在点击新闻或应用卡片时能体验到近乎即时的页面加载。
实施决策框架
在以下情况使用 Speculation Rules:
- 你的 PWA 有可预测的导航路径(列表 → 详情)
- 你希望减少第二页视图的 Time to Interactive
- 你更喜欢声明式配置而非命令式 JavaScript
在以下情况坚持使用 Service Worker 缓存:
- 你需要完整的离线支持
- 你有复杂的缓存失效规则
- 你必须支持不支持 Speculation Rules 的旧版浏览器
生产检查清单
- [ ] 在文档头部添加
<script type="speculationrules">块 - [ ] 设置保守的
eagerness值("moderate" 或 "conservative") - [ ] 排除已认证或个性化的路由进行预渲染
- [ ] 在分析中监控数据使用量的增加
- [ ] 使用 Chrome 121+ 和 Edge 121+ 进行测试