dev.to | 📄 原文链接 | 2026-09-02 收录

React 19 Actions:我讲了三个 Hook 却始终没说清什么是 Action

来源:dev.to — 2026-09-01

📋 概述

作者承认自己在前三篇文章里反复使用 Action 这个词,却从未定义它,这篇专门补上这个缺口。他给出 React 官方文档的严格定义:一个在 startTransition 里被调用的函数就是 Action。关键在于决定它成为 Action 的从来不是函数内部的任何代码,而是它走过的「门」——直接调用 startTransition、useTransition 的调用、表单 action 属性传函数而非字符串、以及 useActionState。这四扇门里,只有 useActionState 专门捕获并持有函数的返回值作为状态,这解释了为何第一篇里 isPending 与真实结果一起出现。他也澄清 useFormStatus 读的是最近父表单的 pending 状态,useOptimistic 则是从一个已运行的 Action 内部调用的 setter。

🔑 核心要点

💡 金句

概念在已经感受过它解决的问题之后,往往才真正扎下根来。
← 返回 dev.to 首页