用途:介绍 TanStack DB 中变更操作的模式,围绕“乐观更新 → 服务器持久化 → 同步回写”的流程,让界面即时反映改动,再根据服务器响应确认或回滚。
主要能力:可在集合级别执行插入、批量插入、更新(Immer 风格草稿)、批量更新、删除与批量删除;可在 createCollection 时通过 onInsert、onUpdate、onDelete 等处理器把变更持久化到服务器。支持用 createOptimisticAction 定义基于意图或跨集合的乐观操作,用 createTransaction 手动控制批量变更的提交或回滚,以及用 usePacedMutations 配合 debounceStrategy、throttleStrategy、queueStrategy 实现防抖、节流和队列式限速变更。还提供非乐观变更(optimistic: false)、变更元数据、事务状态查询(pending、persisting、completed、failed)与 isPersisted.promise 等待持久化,并说明临时 ID 的处理方式与同一事务中变更的合并规则。
使用方式:在集合上直接调用 insert、update、delete 等方法;为需要持久化的集合定义对应处理器;对复杂意图使用 createOptimisticAction 或 createTransaction;对高频操作使用 usePacedMutations 并指定策略;如需等待服务器确认,可 await 事务的 isPersisted.promise 并处理错误。
适用场景:待办列表、点赞、表单自动保存、音量滑块、文件上传等需要即时反馈并同步服务器的前端数据操作。
限制:资料未提供具体支持平台、框架版本、性能指标、错误重试的完整策略细节与收费信息,具体实现请以官方文档为准。