Loading video...

Video Failed to Load

Go Home

A cure for React useState hell? You may not realize how easily you can replace useState with useReducer and simplify your state management You can read more in my latest blog post:

609,263 views • 3 years ago •via X (Twitter)

10 Comments

Steve (Builder.io)'s profile picture
Steve (Builder.io)3 years ago

Huge kudos to @DavidKPiano for first pointing this out in his epic thread:

Steve (Builder.io)'s profile picture
Steve (Builder.io)3 years ago

If you are interested in this topic and want to read further, I go into more detail in my blog post:

Steve (Builder.io)'s profile picture
Steve (Builder.io)3 years ago

And follow @DavidKPiano - he is the creator of XState and @statelyai and posts tons of great content and tips on state management patterns

Steve (Builder.io)'s profile picture
Steve (Builder.io)3 years ago

Also if you are a fan of YouTube I’ve started posting videos there as well

Marton Sari's profile picture
Marton Sari3 years ago

To me it makes no sense to do validation like that. The pattern you reach with this is silent errors all around. If you want user input validation, you do it with an explicit mechanism with feedback (client/server/isomorph). If you want dev consistency, you do it on type level.

Steve (Builder.io)'s profile picture
Steve (Builder.io)3 years ago

Generally speaking, imo you should have both

Erik Rasmussen 👨‍💻🇺🇸🇪🇸's profile picture
Erik Rasmussen 👨‍💻🇺🇸🇪🇸3 years ago

@DavidKPiano This is super cool. I feel like you made a typo in the video (and blog post). Surely this should be `Math.min(next, 10)`, right?

Steve (Builder.io)'s profile picture
Steve (Builder.io)3 years ago

@DavidKPiano Doh, yes, thank you!

Vibbs Dod's profile picture
Vibbs Dod3 years ago

Have you checked out Learnt about it from new react beta docs, might help with pain points that you are talking about.

Steve (Builder.io)'s profile picture
Steve (Builder.io)3 years ago

Wrote about this in the blog post, Immer is amazing

Related Videos