Skip to content
Artwork for Frontend First
Frontend First · Nov 14, 2024 · 59 min

Exploring useActionState

Sam and Ryan talk about React 19's useActionState hook. They discuss how adding async functions to a plain React app introduces lots of in-between states that developers must grapple with, and how useActionState allows React to collapse and eliminate these states, bringing the simplicity of React's sync mental model to our async code. Timestamps: 0:00 - Intro 1:51 - How React normally eliminates state in synchronous apps 8:20 - How useActionState lets React eliminate state in asynchronous apps 18:17 - Why you shouldn't just pass server actions into useActionState 23:00 - TCP/IP and UDP analogy 26:39 - Thinking of useActionState like enqueue 34:55 - Why the term "reducer" is too loaded for best understanding useActionState 51:07 - How useActionState helps you build a Todo app that stays responsive during pending actions

0:00-59:57

transcript

No transcript — this publisher did not publish one.

show notes

Sam and Ryan talk about React 19's useActionState hook. They discuss how adding async functions to a plain React app introduces lots of in-between states that developers must grapple with, and how useActionState allows React to collapse and eliminate these states, bringing the simplicity of React's sync mental model to our async code.

Timestamps:

  • 0:00 - Intro
  • 1:51 - How React normally eliminates state in synchronous apps
  • 8:20 - How useActionState lets React eliminate state in asynchronous apps
  • 18:17 - Why you shouldn't just pass server actions into useActionState
  • 23:00 - TCP/IP and UDP analogy
  • 26:39 - Thinking of useActionState like enqueue
  • 34:55 - Why the term "reducer" is too loaded for best understanding useActionState
  • 51:07 - How useActionState helps you build a Todo app that stays responsive during pending actions

more episodes

All episodes