Hook · React 19
useActionState
Estado desde una acción de formulario
useActionState conecta una acción async a un estado local. Recibe la función action y un estado inicial; devuelve el estado actual, la action lista para usar como atributo del form, y un flag isPending.
La firma
const [state, formAction, isPending] = useActionState(fn, initial). La fn recibe el estado anterior y el FormData, y retorna el nuevo estado — sync o async.
Sin useState extra
A diferencia del patrón clásico onSubmit + useState, useActionState centraliza el flujo: un solo lugar maneja lógica, estado y pending. Funciona con y sin JS habilitado (progressive enhancement).
Tropiezos comunes
- 01La action recibe el estado ANTERIOR como primer argumento — no olvides retornar el nuevo estado en cada rama.
- 02isPending se activa en cuanto se dispara la action y se desactiva cuando resuelve.
- 03No mezcles useActionState con onSubmit en el mismo form — elige uno u otro.
¿Fue útil?
Inicia sesión para dar feedback
