跳到主要内容
前端术语库

乐观更新

Optimistic Update

交互模式也叫:乐观 UI、Optimistic UI、先更新后请求

一句话:用户操作后界面立即显示成功的结果,同时在后台发请求,如果请求失败再把界面改回来。

详细解释

正常流程是「点击 → 等接口返回 → 更新界面」,网络慢时用户会觉得卡。乐观更新反过来:先假设请求会成功,马上把界面改好(点赞数立刻 +1、红心立刻变实心),请求在后台发送;如果最后失败,再回滚到原来的状态并提示用户。

它适合成功率高、失败了也容易恢复的操作:点赞、收藏、勾选待办、拖拽排序。不适合付款、删除重要数据、需要服务端计算结果的操作,这些还是老老实实显示加载状态。

跟 AI 提需求时要把「失败怎么办」说清楚:回滚到什么状态、用什么方式提示。React Query、SWR 等数据请求库都有现成的乐观更新写法。

怎么跟 AI 说

可以直接贴给 Cursor、Claude Code 等工具,把里面的业务内容换成你自己的。

文章点赞按钮改成乐观更新:点击后红心立刻变实心、数字立刻 +1,同时后台调用点赞接口;接口失败时恢复原来的状态和数字,并弹出轻提示「点赞失败,请重试」;请求完成前重复点击不再发请求。