Mutation、乐观更新与回滚:练习答案
为每次提交生成 clientId,按钮在 mutation pending 时禁用或按 clientId 去重。乐观评论带 pending: true 和 clientId;成功后用服务端真实 id 替换临时记录,失败时按 clientId 移除或恢复旧快照,并显示可重试提示。
并发评论不应使用“最后一次快照”覆盖所有结果;按 query key 和 clientId 合并,最终再以 invalidate 重取作为权威校正。
答案只用于核对;请把自己的 query key、状态转移和失败证据记录下来。