Learn React Hooks: useTransition - Simply Explained!
Join The Discord! → discord.cosdensolutions.io
Source Code → github.com/cosdensolutions/co...
In this video we will learn about React hooks, starting with useTransition. This powerful React hook will allow you to have interruptible state updates that you can configure to priorities some updates over others. This is an optimisation React hook which you will use to give users a better experience on your app. You will learn how to use the useTransition hook, how to start a transition with startTransition, and how to use the isPending flag to show some UI as the transition is happening.
In this new React world, hooks are here to stay, so it's best to learn them! In this tutorial I demonstrate the useTransition React hook, and I explain it very simply and in a way that is easy to understand. Enjoy!
Пікірлер: 54
Hey everyone! I just launched 🚀 Project React, which is a course that teaches you React by building a real-world project. It goes way beyond what you see in these videos and walks you through step-by-step on how to build a big and complex application with React! You can check it out here: cosden.solutions/project-react
What you say "This is the last video you are ever going to watch", is actually 100% true. Just amazing explanation 👌🏻
I had to watch few parts of the video twice, but got it at the end. Amazing explanation, you got one more subscriber 👍
Pretty clean explanation. Easy to understand. Thank you
Great explanation. Thanks a lot 👍
Beautiful. I didn't think you could have such a refined control of rendering by using hooks like this.
Sick video. Pretty advanced stuff.
Cool, now I understand useTransition and I won't need to look at other videos and solutions for this. Great explanation.
@cosdensolutions
9 ай бұрын
happy to hear it!
That was very clear and helpful brother. Thanks, much appreciated 🙌👏
@cosdensolutions
9 ай бұрын
Glad you enjoyed it!
Nice explanation buddy!
Thank you for the video!
Thanks, man, clearly explained 💖💖
Thanks a lot cosden
Amazing! I will refactor my code. Thanks so much!
whoever has found this video on KZread is lucky
I really don't have to go to another video for this topic ever again 👏🏻
@cosdensolutions
9 ай бұрын
There you go ☺️
I appreciate your work this helped a lot ❤❤. Your are the best who explain the hooks it is true the last video you need to watch ❣❣
@cosdensolutions
9 ай бұрын
thank you for the kind words!
Awesome :)
Thank you so much!!!
Excellent.
Much simplified than the info from the docs :)
Bro that was helpful 😄😊
perfect example
Clean
your a goat
Simple but so juice... hehe
React sends one rerender with currentState and isPending:true to component to tell it will start transition. Then it will rerender component with newState if during this rerender (probably slow) another update is raised, async rerender will be stopped
Quick Question? Can I use the useTransition to put the loading state for side effects functions For e.g. if I have to update the user and I'll wrap the start transition on update function. I can use the isPending state to show that is updating or likewise.
so basically useTransition is just debouncing the function to be invoked a little bit later(in milliseconds)?
u are right i don't need to read or see another thing
Neat. So what happens to components that render direct from manipulations like chart libraries or canvas libraries? They don't work because react has no way to stop them right?
@cosdensolutions
9 ай бұрын
depends, if they are driven by state, this will control when that state gets interrupted or not
does the useTransition hook work with react's userReducer just like it would be useState?
Awesome. Simple and clear explanation. But I have a question regarding POSTS page. How can we resolve the UI freezing issue for Posts page? Or how can we load Posts page content faster? Can you help me with this? Thanks.
@cosdensolutions
2 ай бұрын
only render a few at a time. So either use virtualization, or paginate them and load them 20 at time
Why does my script to animate in page router doesn't work in app router of nextjs
hello, Can you explain this one please - while (performance.now() - startTime console.log("entered while...", performance.now()); // Do nothing for 1 ms per item to emulate extremely slow code } performance.now() - startTime < 1 should always be greater than 1 isn't it? I don't know why is it going inside the while loop and what does 1ms delay is derived. Would be great if you can please explain.
@cosdensolutions
7 ай бұрын
this code just forces the component to wait 1ms before continuing the render. It comes from the React docs in their examples! It just simulates slowness so that you can actually see the effects of what you are doing
why not use loading instead
seems like same with the suspense lazy load what are the difference between them?
@cosdensolutions
9 ай бұрын
suspense is for delaying the loading of something and this is for interrupting it and prioritising other renders first
@deliotablang823
9 ай бұрын
Many thanks. Is this working also using next/link?
Hello, Loved your explanation but it does not seem to work with this piece of code. const buttonClick = (type: string) => { startTransition(() => { if(type === "fast") { setCounter(25); } else { setCounter(() => { let sum = 0; for(let i =0; i
@cosdensolutions
6 ай бұрын
because startTransition works by interrupting renders that take too long after being set, not the actual setting of a new value. In your case, you're just taking a while to set the new value to trigger a re-render, but the actual re-render is super fast as it will just update the counter with one value
@veerasamysevagen9533
6 ай бұрын
@@cosdensolutions makes sense yeah. Thanks a lot for responding.
Its look like debounce or throthle
@cosdensolutions
9 ай бұрын
It does
I promess you after reading this comment you wont have to read any other comment again
@cosdensolutions
9 ай бұрын
Thanks you saved me