# IndexedDB 事务与版本管理(结构化存储、游标与性能) ## 关键实践与参数 - 版本升级:在 `onupgradeneeded` 中创建对象仓库与索引;迁移时保证幂等。 - 事务:读写分离事务;控制批量大小与异步游标迭代。 - 性能:使用索引查询与游标范围;避免大对象存储,引入分块与压缩。 ## 示例(伪代码) ```js const req = indexedDB.open('app', 2) req.onupgradeneeded = e => { const db = e.target.result const store = db.createObjectStore('items', { keyPath: 'id' }) store.createIndex('by_user', 'userId', { unique: false }) } ``` ## 验证方法 - 迁移演练与回滚;数据一致性检查。 - 性能基准:批量写入与查询延迟;游标遍历耗时。 - 错误监控:Quota 限制与失败处理路径。 ## 注意事项 - 浏览器与设备差异大;提供降级与回退存储方案。 - 跨域与隐私模式限制;遵循权限与清理策略。 - 与 Service Worker 缓存协同,避免重复与不一致。

发表评论 取消回复