Every React 19 Feature Explained in 8 Minutes
Ғылым және технология
Grab the React 19 Guide: reactbootcamp.dev
Chapters
0:00 - Intro
0:26 - How to use React 19
0:38 - React compiler
0:58 - No memoization hooks
1:38 - No forwardRef
2:07 - use() hook
2:27 - Fetch data with useEffect/use
3:02 - Use context with useContext/use
3:32 - Directives
3:53 - Actions
4:12 - Client Actions
4:37 - useFormStatus() hook
5:12 - useFormState() hook
6:12 - useOptimistic() hook
7:07 - Conclusion
Пікірлер: 145
Really like the pacing, examples, and humor. Now we just need dark mode 🌙
@MASTERRAGE
2 ай бұрын
I was going to say the same, thank you.
@upsxace
Ай бұрын
eww Light mode>>>>>>>
@be2wa
Ай бұрын
and a proper typeface...
Really smooth pacing and topic jumps. Great job!
Another fantastic video! Your explanations are exceptional-clear and concise! I'm eagerly awaiting more content from you! Keep up the excellent work!
Good pace , and clear concept examples. These examples are way better then others . You got one subscriber 👍
So well explained, thank you for summarizing this (and for all the clear illustrations that took time and effort). I need to watch this a couple more time even after trying to watch as much as I can of React Conf 2024;
Amazing explanation 🔥 the visuals and examples really helped me understand the new features of React 19
This is just a phenomenal video. Concise, simple and great examples.
really love the way you teach pls make a full in-depth course for React with latest features 🙏
This is amazing! Great explanation and great React updates coming.
i like the way you use animations to explain concepts, it makes comprehension so much effective Thanks
Wow, great overview. Thanks for this!
Many thanks for this great summary! 🙏
Awesome explanation! Thanks a lot :) We got a really useful video right here.
Thank you so much for this consice and straight to the point video!
the code and order of its working is a good idea. Great video on these React's concepts 👏👏
Great video! Keep up the good work, mate.
Please make more of such videos. Fasterr! (Keep up the good work)
Clear explain, thanks!
Good editing and explanation!
Very helpful. Thanks
Loving your work. KZread is full of basic react app tutorials, but well explained content like this is much needed
Awesome. (Subscribed!)
Great video thanks.
It's an unusual update from the React team. Until now, React was more like a rendering framework with hooks for adding logic. If you wanted form state for instance, you'd need to add it yourself or use a community lib. Now they are bringing their own solutions to some common use cases. I find it interesting.
@bass-tones
2 ай бұрын
I think they (rightfully) are seeing that React will eventually fall out of relevance if they don’t take some extra steps. The news of the Forget compiler is absolutely massive, and is alone one reason I would have eventually gotten fed up enough with react to switch to something else, if it never appeared.
whoa this is very nice and easy to understand ... can you kindly make on fetching and sending data to the backend in react ether with fetch() or axios
Your subscribe picture is funny af You got a subscribe from me 😂
It makes me feel like a React developer.... which I'm not. Great content !
literally the best one
Amazing video! Where do you do such code animations for video?
I just spent 2 hours coding a complex form with Next.js and then, I watched your video, saw `formData` at 4:30, went back to my code and rewrote the from in 20 mins. Lessons of the story : 1) The React updates are really great ! 🚀🚀🚀 2) I should have watched your video earlier 😅😂
@zacharyzheng9326
Ай бұрын
How about react-hook-form?
Full circle to PHP era.
@anonimous__ho
Ай бұрын
same impression here since i heard about nextjs… the new stuff is the re-invented old stuff, they cant change it…
@simpingsyndrome
4 күн бұрын
Butt with JavaScript we have constant DX for both backend and frontend while in PHP u still need a JavaScript if u need interactivity@@anonimous__ho
that 'subscribe bro plz' at the bottom right got me rolling. subbed haha
"use client" doesn't mean you want you component to run on the client and "use server" doesn't mean you want your component to run on the server. "use client" means you want to access browser objects like the window object, so you have to send your component to the client on top of rendering it client side or/and server side. "use server" means create an API endpoint and treat every function defined in the file as POST
@TheCodeBootcamp
2 ай бұрын
It's a little more complex than that. "use client" is also required (at least in Next.js) in components that use state, hooks, and event handlers. It's beyond the scope of an 8 minute video, but I'm happy to cover directives in greater detail in a future video (maybe in a Next.js video or when React 19 is stable).
@jazsouf
2 ай бұрын
Yes, “use client” is for when you want your component to run also on the client, but it doesn’t mean that it won’t be server rendered. It has burned me many times when starting with the app router. Great video btw, I think a video about directives coupled with rendering strategies would be great!
@o_glethorpe
2 ай бұрын
We are not even use it and it already looks confusing.
@rico5146
2 ай бұрын
@@jazsoufYeah, actually many of guys doesn't seem to know that the fact the component marked as 'use client' also rendered on the server. But it only happens on initial page load (Browser's refresh page also does) for faster page load on the browser. After entire html has been made of the page, it gets painted and client components do hydration which attaches hooks or event handler to the component.
That was very helpful ❤,thank you very much ,could you please make a tutorial for react redux and redux toolkit ?
This is really great explanation 👍 Can you keep video background dark? My eyes hurt in light mode.
Best explanation
After 6 months of programming burnout break looks like Im returning in the right time
Thanks god, I was never comfortable working with those optimization elements.
React compiler is independent of React 19 release. So React Compiler may come with 19 or may not
So good videos!!
That was good!
"use server" is not to run react component on the server. It is to create instant endpoint and run javascript code in the server.
@TheCodeBootcamp
2 ай бұрын
"use server" can be used at the module or function level. You're right that it's primarily used for marking server actions.
So by introducing both directives and actions, does that mean that React can replace Next.js (or that Next.js isn't necessary anymore)?
@jwoods9659
2 ай бұрын
It's all a mess i moved over to VUE
@TheCodeBootcamp
2 ай бұрын
React doesn't replace Next.js. Next.js is a framework built on top of React. With client-side actions in React 19, you can make a client-rendered React app with actions, so you don't need Next.js to use actions in particular. Directives are useful only if your components can run on the server or client (like in Next.js). Next.js still has a bunch of features you're still not going to get with a plain React project (data fetching tools, routing, image/font loading, etc)
Hey, thank you for Uploading Videos again: I was currently building my Web App with your Full-Stack Saas App Video with Nextjs and SUpabase. Unfortunately you deleted it, can you reupload it, or has some1 downloaded it?
Very nice ❤❤
for beginners should I learn react 19 or older version as most websites use older react version and react 19 has a lot of changes
@TheCodeBootcamp
2 ай бұрын
I would learn React 18 first, especially since its still the stable version. React 19 doesn't replace many things. It's useful to understand why these changes were introduced.
i’m not seeing an ergonomic way of handling error state within the form state or actions here. maybe i’m missing it, or it’s in the docs, but wrapping a component in an error boundary doesn’t feel like a good solution, since that can’t be contained to the component with the form logic (because the error will occur in that component, the error boundary must surround it). there are also aspects of forms that are hard to handle in a performant manner, like arrays of fields. maybe the new compiler handles that part though. but it still sounds like we need libraries like tanstack query to make error handling easy, and libraries like react-hook-form and zod to provide good validation
@TheCodeBootcamp
2 ай бұрын
I bet better patterns will emerge once 19 becomes a stable release
Im not a react dev, but I watched the video... I was wondering, does vuejs abstract a lot of things that makes it easier to use than react? It would be interesting an opinion of who know both.
"use server" and "use client" will be a mess! believe me. It's hard to reason about which part of the code is executed on the client or on the server, and confusion will introduce bugs and chaos.
@sowmocoding5740
2 ай бұрын
Been doing this for 2 years in Nextjs lol
@snerketryne
2 ай бұрын
@@sowmocoding5740same, and it's a mess lol
@kevinreber
2 ай бұрын
I feel like Remix does a pretty good job at this. If you want your code to only be ran on the server just rename your file with a ".server.ts". If you want your code only ran on the client, then rename your file with a ".client.ts". A lot of these new React concepts and patterns actually look like they're taken from Remix
@Athet0s1s
2 ай бұрын
source: believe me. There is so many things that when not used properly can introduce bugs and that doesn't make them less powerful when used properly
@elvispalace
2 ай бұрын
i've been using for a while
React is learning from Svelte
Create one on flutter
Does React 19 will support server components out of the box, or u need some minimal server to support RSC?
@TheCodeBootcamp
2 ай бұрын
You need a server. That's why most people use Next.js (with app router) right now.
@MrEnsiferum77
2 ай бұрын
@@TheCodeBootcampYeah I don't know why I've asked the question, I didn't read the docs properly... Btw, waiting for react 19 and moving towards RSC, it's better if I go greenfield, or I have that time and luxury to refactor client app towards server components, i will go with astro + qwik... I mean get all the performance u can get :)
@yashsolanki069
2 ай бұрын
@@TheCodeBootcampi didn't get this. When we run the application it's already running on the server right(locally)? So it means another server instance locally to have RSC support? I'm not sure how nextjs does this out of the box?
Seems like they're taking a lot of inspiration from Svelte with this update. I'm all for it.
Wow react is becoming solid. Ryan was right
cool video
Please explain about javascript and mern stack topics
Could you please create a video on JavaScript Data Structures and Algorithms
Happy that React added those features which means no more NextJS. Vercel is almost killing React
@TheCodeBootcamp
2 ай бұрын
As a React framework, Next.js offers a bunch of features that React doesn't have out of the box. Routing, image/font optimization, SSR, etc. But features like these definitely make the default React experience nicer. Thanks for watching!
@tonyvito5062
2 ай бұрын
@@TheCodeBootcamp Thanks for your HQ content man!
@arden6725
2 ай бұрын
all of the server features require next.js until someone writes a different server runtime. the react docs literally refer to next.js when referring to these features
4:13 - is that supposed to be action={myAction} ?
Great
Experiencing technology change for the first time in my life
React is the Apple of Javascript frameworks: "look, everybody, we build a compiler"
I am new in react can you make a project video which is help to improve react concept 😊😊😊
4:11 myAction!=formAction
@TheCodeBootcamp
2 ай бұрын
Typo
Correction on 3:48 - “use server” does not tell react to run the code on the server exclusively. It is only used for creating server actions. “use server” won’t create a server component
@TheCodeBootcamp
Ай бұрын
Would have been better to say "To specify code (actions) you want to run on the server"
@haveyouseenitthough
Ай бұрын
@@TheCodeBootcamp Possibly yeah. I think the real issue is with react choosing those as the way of declaring 2 very different things. “Use client” is more confusing still when you use an SSR framework which is rendering ‘client’ components on the server. It’s fine once you understand it but I think it’s a big problem for beginners
React is slowly becoming Nextjs because of new actions feature
'useFormState' is already going to be replaced by useActionState, which returns errorMessage, action, and isPending state.
Just wow
Wow this svelte 5 release looks promising
Angular please
reed bager is that you ?
The form stuff looks like trying to “use the platform” and the asynchronous stuff looks tanstack query
They should've done this years ago
react became almost like vue 5 years ago 🎉
The compiler will not be part auf react 19, maybe as a separatate bable plugin.
React 19 = Next 14, that's all there is to it
so after 19 versions, react accepts angular's way was the right one.
Please make more comprehensive videos with examples.
@TheCodeBootcamp
2 ай бұрын
What would you like to see?
@prashlovessamosa
2 ай бұрын
@@TheCodeBootcamp i mean to say please make more comprehensive videos explaning topics thats it.
9.9/10 ❤🔥 .1 is for not using darkmode 😄
Memoization alwayes seemed to me just a headeache when writing react code, In fact, I never even give them I try 😂. Who feels the same?
Cant get the idea of useOptimistic
This would destroy our whole app. Omg
am your biggest fans now give me a heart
There is a bug in your code on minute 2:42 , your internal function is called fetchPerson, yet in the useeffect you're calling getPerson(). Given that this is a BootCamp, I would assume this is helpful.
This video contains a factually wrong part. "use()" cannot be used to fetch data as described at 2:50. You can't use "use()" with promises created inside the component, because they are not stable references. The whole point of a generic "use()" hook is that unlike other hooks, the identity/persistence of the subscription is already provided by a stable reference. That's the way many state managers, including Recoil, works out dependency definitions inside atoms. You can simply reach out to the dependency through a subscription-based API. But if you put a fetch call in a use(), you'll always have a new promise reference, and it won't work.
The compiler isnt part of React 19.
@redeemr
2 ай бұрын
I was so confused about that. I also heard the same thing about the compiler not being included but then I've also seen a lot of people say that it is.
it's not a compiler it's transpiler.
@cheemakhushvirsingh
Ай бұрын
What's the difference?
@imadhamaidi
Ай бұрын
The difference is very subtle, but it is still valid to call it a compiler since it's transforming a high level language which the browser can't understand (JavaScript with jsx etc) into a language that browsers can understand (vanilla JavaScript). Calling it a transpiler would just cause confusion to people that aren't familiar with the term.
This is gold, very well structured and all the animations helps to get the idea quickly! Thanks for share 🫡
Action hook is really messed up.
At this point, React is just copying Remix with a worst API.
great content
Remove some useXXX, add some useYYY😂