React Hooks Crash Course (useMemo, useCallback and more).
ฝัง
- เผยแพร่เมื่อ 13 ก.ค. 2023
- Check out my courses to become a PRO 🔥
developedbyed.com
Starting with useState, we explore how to leverage this hook to manage state within functional components. Discover how useState simplifies state management by providing a concise syntax and powerful capabilities, enabling you to create dynamic and interactive user interfaces.
Moving on, we dive into useEffect and useLayoutEffect, two essential hooks for handling side effects in React. Understand the crucial differences between these hooks and gain insights into when to use each one effectively. Learn how to incorporate asynchronous actions, data fetching, and other side effects seamlessly into your components.
Next, we explore useMemo, a powerful optimization hook that allows you to memoize expensive calculations and prevent unnecessary re-renders. Unlock the potential to enhance the performance of your applications by intelligently caching computed values and minimizing redundant computations.
We then shift our focus to useTransition, a relatively new addition to the React hooks family. Explore how useTransition empowers you to create smooth and seamless user experiences by adding asynchronous transitions and suspense to your application flow. Unleash the power of concurrent rendering and watch your UI come to life.
Continuing our journey, we unravel the benefits of useCallback, a hook that optimizes function references, preventing unnecessary re-renders. Discover how to optimize performance by memoizing callback functions, ensuring they remain consistent across renders while avoiding unnecessary recreations.
🎁Support me on Patreon for exclusive episodes, discord and more!
/ dev_ed
🛴 Follow me on:
Twitch: / developedbyed
Twitter: / developedbyed
Instagram: / developedbyed
Github: github.com/developedbyed/
#programming - วิทยาศาสตร์และเทคโนโลยี
Timestamps
0:43 useState
4:26 useEffect
12:46 useContext
15:48 useReducer
20:09 useRef
21:35 useMemo
23:16 useCallback & useMemo
28:02 useTransition
23:34 Love Svelte, tired of this react shite...
Something you can discuss in one of your next videos is what the difference is between useContext and a 3rd party provider is like Redux, Zustand or Tanstack is to handle global state. There is a difference 🥳
The only difference is that context is a react build in state management, and others are a separate Library
I've gone through many tutorials but this one cleared my mind with all the unused material and filled it with required data only. Thanks for this precious tutorial my gorgeous friend.🎉❤
I've been following you since 2019 when you were just getting started Just getting back into dev and glad to see that you are closing in to 1M Subscribers. Keep up the great work, you make learning fun!
agree
Thanks for helping the community. God bless you! Greetings from Brazil
You made a video, when i needed it the most thanks😅
Amazing content. One request. Explain where you would use each hook in the real world. Your demo for reducer and context were so simple and clear, but I did not understand why these hooks were added to React in the first place
Great video as always! Thank you Ed!
Where do Pirates get their hooks from?
Do you want to "setCourse" to that place? @developedbyed
Facebook
Thank you man!! Appreciate it!
I'm finally able to wrap my head around hooks ,I've mostly been using useEffect and useState, I just realized i've not been using the right approach.
Thanks for this video and for walking through all these. I especially like the idea of using Zustand. Will you ever make a video tutorial on this state management library?
Awesome content as always. This beign a React hooks crash course, the project name 'my-vue-app' got my eyes hooked! 😂
Thanks for such amazing content. Please, please, please make a Zustand crash course!
About the useTransition I din't knew it works like that, what I used every time for real time filtering with fetch was a fetch api with abort signal, this makes things easier 👌
your useMemo example was the first time ive seen someone make sense of usememo. even my senior dev has had a hard time explaining it. all he ever says is use useMemo to memoize your function hahaha wtf!!! thanks for this video.
this was great thank you !
hey Ed thanks for this amazing video, can you please use all of these hooks in a project and show us a glimpse of why it is used and where to use the specific hook. Except (useState, useRef, useEffect, useEffectLayout)
"At what point do we just stop and switch over to Svelte" - Truer words have never been spoken. At this point the entire dev world is just suffering from React Stockholm Syndrome
Thanks Ed !!!
thanks mate
Added to "pre interview revision" playlist
Svelte series!
Hi ed..i need nextauth tutourial from you .. thanks ed
Hello. Do you ever run specials on your full stack course? I love the stack that you have chosen by the way.
thank you
You made me think about svelte )
"I'm tired of all this React shite"
Us too brother, us too. ahah
It’s funny the last part, Svelte. I’m learning React, due to popularity, while already using Vue. But I would’ve wanted to try Svelte… but there’s only an amount of time you can spend learning new things, while also having commercial skills, I’m also learning node/express, again, I wish I would’ve learned Nest…😂
We need videos about React & TypeScript...
good
We need 3d website tutorials 😁
Can you make a video about useSyncExternalStore? For example with data synchronization from localStorage?
A thumbs up for questioning why we haven't moved over to Svelte lol
Can you make video on most underrated hook “useImperativeHandle” which is most useful
Terrible joke right off the bat? Instant like 😆👍
Hey bro create a video on how Javascript behind the scene work and also console.log behind the scenes work. Try to add more interviews stuff in your video so we developer knows everything thing
I will be waiting for your next videos😊
hey Ed some arduino or ESP32 projects with react interaction would be amazing!
Just recently jumped into React, coming from mostly a C/C++ background. It’s funny that l was literally looking these up yesterday. Thank you for these videos.
I think my biggest confusion is with useCallback specifically and the dependency array. When using useCallback with an empty array, variables from useState are automatically updated but when using for example the result of a TanStack query inside the callback, they won’t update without specifying the dependency. Is this because in order to use an empty array, the variables should be referentially equal to each other?
What sucks about React from a newbie perspective is thinking you know how all these hooks work and then realizing they do something internally completely differently than what you expected.
hello brother please make a video on (express js) backend and (next js ) frontend about "server side " filtering data and pagination not using server action
H we j❤😊
🔥 🔥 🔥
hi
when ever i use hooks in my own custom library i getting the error saying cannot read the null with the hook i used
Could you make a short video no how to make jquery work in nextjs13 app directory
What's the diff of setCount(count+1) and
setCount(prev => prev + 1)
When updating the count
Which to use?
setCount(count+1) would run with the current value of "count" which could be stale and you don't want to use it, setCount(prev => prev + 1) updates using the previous state where prev represents the previous value. This approach ensures that you're working with the most up-to-date state value because React guarantees to provide the latest state snapshot to the functional update.
Use the later one, it makes your life easier, it works like await where it updates the state immediately and not async
@thisbevibhor is right. Also Read about 'React Batching'.
I already know how they work I just want to relearn them your way
You should add chapters to this video
when to use useMemo and when to use useReducer
I have this problem, i downloaded node, and installed react with all packages, but then when i do localhost3000 i don't see my page, what can i do
wow
Content with value. Something The Primeagen will never grasp the concept of.
can someone explain at 9:24 again? why does it skip the count by 2?
little late but: probably the component wrapping the whole app, it renders it twice for debugging purposes
🎉
30:45 Is that his vape on the table??
i love you
I just reached this topic today 😂 while revision 😂😂
From where you are learning react
👍
@@dharmikjain5288 well my learning methods are weird but currently revising from w3
W3school just revising to create some project
Does anyone know what color theme he's using?
jellyfish
@developedbyed Can you make a video on React Error Handling? like there's error boundry which react provide idk why these component are class component and theirs also react-error-boundry npm which actually provide you with hooks..... please NATURE DO SO ACTION MAKE ed SEE MY COMMENT & MAKE VIDEO ON IT
When you are trying to understand useMemo and useCallback by yourself 30:25
useSvelte()
what's the extension name?
React Developer Tools
Can we get a link to Github with these examples?
Bro i started learning react 2 days ago or so.... Stop READING MY MIND!
import React, { useEffect, useState } from 'react'
const Test = () => {
const [count, setCount] = useState(0);
useEffect(() => {
const vv = setInterval(() => {
setCount(prev => prev + 1)
}, 1000)
}, []);
return (
{ setCount(prev => prev + 1) }}>{count}
)
}
export default Test
i have no problem`` why?
🤦oh man i liked the components by what's up with these hooks limitations and easy to make bugs
Crying in SolidJS ;_;
23:34 Love Svelte, tired of this react shite...
perso
First 😁
I was first comment
React is a mess
I want to develop a world standard social media app with over 25 different features, please can you help me or introduce me to a professional company ??
hey man
just out of curiosity.. are you gay ? 😅😅
he made a video a few months/a year ago with his girlfriend...
If I get it 👈
I'll subscribe 😐🙂
I hate hooks. They make code so hard to reason about + easily create bugs.
I second the useSvelte() comment, its time to move away from all this ridiculous complexity 💯😃👍