@@TheSaintsVEVO If you find something you dont know, research it and come back. This applies no matter what level youre at. Id say a beginner would get more out of this video than an expert.
One thing alot of people miss is that on useState in the setter you can actually pass a function to get the prev state value you for say updating a counter which is the correct way. For example setCount(prevCount => prevCount + 1). if you where to call setCount and try modify the value based on the current count value the state would be modified based on the value at that render time. If you call setCount(count + 1) twice it would only infact increase the value by one as both calls would get the prev rendered value and overwrite each other. Hope this helps
You want to know them, just in case you need them. I've been using React since 2019 and I have started with class components. They are, you can say, just a more explicit way of doing the same thing you are doing with hooks. For me it's backwards: instead of getting to use a separate function componentWillUnmount(), I have to remember that the function returned from useEffect() does the same thing.
This video is must of every react developer. He made everything so simple and easy to understand and that to about so much of react features in just 13 minutes.
Wow, It was actually easy to understand the core concept of the hooks in just 10min, I have seen 40min that could not explain a hook as good as this video. Great work.
Dude I'm in love with this channel, speed is perfect, finally someone who is not wasting 5 mins begging for subscribe, or speaking about his life or unrelated topics... And someone who is not writing code, testing and debugging in front of us... this is just perfect srsly... Keep up the perfect work!
This is the only video i have found helpful. it's been a week and i have been struggling with react hooks. I am used to writing classes. Hooks feel very intimidating to me but after watching this video, i feel confident in using hooks instead of writing classes. Thank you for such an easy explanation
This is is the only video that not only cleared my hooks concept, but also shows the shortcut method to write eventhandling and state change in one line i.e. ( setNum(num+1)}>plus ) Thank you so much.
This is really helpful for me. I started learning React without understanding component life cycle completely and was struggling a bit. Now I can useRef() of this video. Thanks!
It's definitely a tough chunk to digest but it's really interesting to have a peak at what react is since I always looked the other way toward angular and vue
In addition to the *useImperativeHandle* hook: you can use this if you have both a *forwardRef* and a *useRef* in your component that you want both to be assign to the same element. You can use the *useImperativeHandle* hook to assign the regular *useRef* ref to the *forwardRef* ref. This is because you can't assign two refs to the same element.
Hooks are beautiful. I have projects using both react and vue, both are awesome. I'm a react guy and i think it's easy to learn Vue if you already on intermediate level in React. But I don't know the learning curve if you learn Vue first.
Another awesome video. I love React hooks. I just recently started diving into writing custom hooks. It has been an excellent way to create reusable functionality as well as not stuffing all the logic in one file. Thanks for this video.
I wish I had seen this video when I began learning hooks. Took me months of study and practice to understand them fully. This would have been a good entry point. Most tutorials fall short.
5:50 - for alert() to run when component is removed from DOM, second argument (dependencies) of useEffect() should still be empty array []. Without empty array dependency code does not work as intended.
I stumbled on this video but I’m glad I did! I was looking for ways to implement hooks in my program but had no idea what to do with them. When I watched this video I had a “Oh, THAT’S what it does” moment occur multiple times. Thanks for making this!
Really easy to understand and helps to point me in the right direction. For a problem, I was stuck on solving a UI component not updating by itself till I click on another component.
1. useState 2. useEffect 3. useContext 4. useMemo 5. useCallback 6. useRef 7. useReducer 8. useImperativeHandler 9. useLayout 10. useDebugValue not in order of the video.. tho. lol Very informative video. Thanks!!! Even 8 and 9 is described as rare, I actually use these very often when building more complicated UI/UX.
I have survived just with useState, useEffect and useReduce hooks, and now I can try to understand the others to implement in my projects by watched this video.
Wow, I had a really hard time figuring out precisely how hooks were working until I found this video. It's so clear and explaining the fundamentals (the key). I'm literally looking for a way to join any newsletter you have because I love the way you communicate complex principles.
I'm not a native speaker, so it's sometimes hard to understand for me. But I'm surprised how clearly you explained hooks. It was realy useful. Thank you..
One thing to note about `useCallback` is that it isn't _just_ needed to improve performance. Sometimes, we need it because a useEffect depends on the function which can cause infinite loop scenarios. So basically, useCallback can save us from these infinite-loops!
@@arpansaha5638if you need to set state based on previous state, you should use a callback function that receives a previous state as the first argument
@@arpansaha5638 Beacause if you run setCount(count + 1) twice very close to each other, count won't be updated for the second call. Meaning count will be added 1, instead of the expected 2. Meanwhile, if you use prev, React ensures the count is updated before the next call.
Even if these videos don't explain stuff in detail, they sure give an overview of the topics......which is a huge deal to IT students like me whose textbooks don't even cover Git or ES6!!!!
Done thanks React hooks can be used only at the top level inside the functional component function definition. Hooks: useState useEffect make sure to provide dependencies array, if no dependencies then pass empty array useEffect can have a cleanup function by returning a function from the useEffect callback, will be called when component un mounts useContext lets you share state from a parent component to child components without having to pass props down useRef use when you want to grab a reference to an html elements and programmatically. useContext lets I access the context from the context provider up the tree useReducer is a better alternative to useState as it allows you to dispatch events or actions from ui elements then handle these events in the reducer function. useReducer takes the reducer function which takes the state and the dispatched action so you can do a switch case in the reducer and handle them useMemo to cache computationally expensive values so that they aren’t recalculated on every render. Takes a dependency array like useEffect to decide when to recalculate the value useCallback is like useMemo but it caches an entire function definition. When you define a function in your component, that function gets redefined after every render. useMemo causes the return value to be cached, so the function isn’t run on every rerender but with useCallback the function isn’t redefined on every render. This is useful when ui elements have a reference to that function like if it’s an onclick handler. When that function is redefined the component that has reference to it will get rerendered and useCallback prevents this, it is useful when many ui elements have reference to that function useImperativeHandle
The React documentation should link to this video.
That google listening to your thoughts and the algo working in the background lol
This channel's videos aren't beginner friendly.. It only helps people who are already familiar with this stuff.
@@TheSaintsVEVO not in this case. This video is just a copy of the official (poor) docs.
@@TheSaintsVEVO not really.
This video is much better. The docs is.. shall I say confusing
@@TheSaintsVEVO If you find something you dont know, research it and come back. This applies no matter what level youre at. Id say a beginner would get more out of this video than an expert.
Hours of react knowledge distilled in 10 mins. Felt like stealing. Thanks man, great work!
ever noticed stolen things taste better than bought? ... except bricks... those taste the same
facts, time is money bro that's the reason and we are lazy asf
i really thought i would be learning react hooks in 1hr but this guy did in 10 mins, superb!
nice man i still don’t get it
@@WellActualllyyy it will make sense eventually, just keep coding
Learned more about hooks in this single video than all my attempts to learn about them over the past several years!
Interesting, because this video doesn't say anything more than the official guide.
@@rafadydkiemmacha7543 you're right, but the official documentation never felt welcoming enough to read through all the hooks.
@@CodeSketched I completely agree and in my opinion, this video is not welcoming neither. One of the worst ones so far.
@@rafadydkiemmacha7543 MOVE ON Hater
@@shashikanthp3145 so it's not allowed to express opinions anymore, sheep?
One thing alot of people miss is that on useState in the setter you can actually pass a function to get the prev state value you for say updating a counter which is the correct way. For example setCount(prevCount => prevCount + 1). if you where to call setCount and try modify the value based on the current count value the state would be modified based on the value at that render time. If you call setCount(count + 1) twice it would only infact increase the value by one as both calls would get the prev rendered value and overwrite each other. Hope this helps
wow i knew that we should use prevcount but never truly knew what could go wrong if i didn't. Thank you man.
aaaaaAaAaa@@souvikchakraborty9900
ty, knew what my error was but couldn't figure out how to solve it until i ran across this comment
When I wanna know about a topic and fireship has already made a video about it is the best feeling. This guy can concisely teach any topic.
now I'm happy that I started learning React in 2022 too lol. I just skipped this whole class thing.
same lol. Class components are so confusing to me but hooks makes it sooo much easier to understand lol.
@@thelonercoder5816 haha yeah! felt good we can just skip what was a major pain in the butt for a lot of devs in the past
You want to know them, just in case you need them. I've been using React since 2019 and I have started with class components. They are, you can say, just a more explicit way of doing the same thing you are doing with hooks. For me it's backwards: instead of getting to use a separate function componentWillUnmount(), I have to remember that the function returned from useEffect() does the same thing.
You explained the whole feature set of the major change React has had in years in 13 minutes! That's just unbelievably awesome! ❤️
This video is must of every react developer. He made everything so simple and easy to understand and that to about so much of react features in just 13 minutes.
Been working with react over 9 months now, learn something new everytime I watch one of your react videos. 🤯
Bro I need some help
Wow, It was actually easy to understand the core concept of the hooks in just 10min, I have seen 40min that could not explain a hook as good as this video. Great work.
Dude I'm in love with this channel, speed is perfect, finally someone who is not wasting 5 mins begging for subscribe, or speaking about his life or unrelated topics... And someone who is not writing code, testing and debugging in front of us... this is just perfect srsly... Keep up the perfect work!
This is the only video i have found helpful. it's been a week and i have been struggling with react hooks. I am used to writing classes. Hooks feel very intimidating to me but after watching this video, i feel confident in using hooks instead of writing classes. Thank you for such an easy explanation
Glad it helped!
You have me *”hook”* ed to this channel.
Boooooooooooo!
Yeeeessssssssss!
go ahead and clock out for me
now thats how you useContext()
HAHAHA bye.
I watched hours video for understanding React Hooks. This video did unbelievable, so easy, just 13 minutes. Thank you from Azerbaijan.
🇦🇲🇦🇲🇦🇲
One of the best explanations of React Hooks. Thank you for good stuffs 👌
I just took an entire college course focused on React, and I learned way more from this video
You youtube channel is simply dream come true for a developer. Short videos, great explanations, etc. It is just awesome
This is is the only video that not only cleared my hooks concept, but also shows the shortcut method to write eventhandling and state change in one line i.e. ( setNum(num+1)}>plus ) Thank you so much.
This is literally the best youtube channel I have every found. THANK YOU!
This is flawless, clear, concise, and thorough. You are an exceptional natural teacher.
Great vid man!
i ti gledas burazeru :D
It is insane how well you explained all these hooks in not a lot of time without it seeming rushed/barely brushed over. Thank you!
Easily the perfect mix of most informative and fun coding channel on the web.
Saved my hours to prepare for interview.
Amazed by this video.
Thanks a lot
Hi Akash! Are you still looking for job opportunities currently ? Would you be interested in exploring a job opportunity in web development?
My god, you explained the concepts and more in much better fashion than toiling over the docs for a week
The amount of information your videos consist is unbelievable, really appreciate your efforts
Omg, today i was thinking of reviewing react hooks and this video show up, thanks!
same tho...
Lol.... same!!!
1:34 (best framework ever) - I just can't agree more :)
LOL
short and simple explaination that's what devs want. this is just that.
Wonderful information in just 10mins. You're a national treasure!!!
The great ability of high-level explanations about general and wide concepts in only 13 minutes. thank you!
The best React Hooks video I've seen so far.
Thank you for providing a such compelling video.
I have watched this like 17 times and I’m learning each time again lol thank you
this is the most amazing, concise, digestible video i've ever watch. Huge props!
You completed the 3 months topic in few minutes . Great work 👏
never ever have I seen someone explaining complex things in simple and short words like you do
you are a professional at explaining things
Niiice another concise hook video in plain english. This is why this is my favourite dev channel 👍🏻👌🏻
This is really helpful for me. I started learning React without understanding component life cycle completely and was struggling a bit. Now I can useRef() of this video. Thanks!
It's definitely a tough chunk to digest but it's really interesting to have a peak at what react is since I always looked the other way toward angular and vue
Thank you very much Fireship.. So much to learn from single video.
In addition to the *useImperativeHandle* hook: you can use this if you have both a *forwardRef* and a *useRef* in your component that you want both to be assign to the same element. You can use the *useImperativeHandle* hook to assign the regular *useRef* ref to the *forwardRef* ref. This is because you can't assign two refs to the same element.
i was here to revise my concepts and you got it all covered in 13mins , thanks a lot .!!
I have never used React before, and this video has made me that much more comfortable sticking with Vue 😅
Hooks are beautiful. I have projects using both react and vue, both are awesome. I'm a react guy and i think it's easy to learn Vue if you already on intermediate level in React. But I don't know the learning curve if you learn Vue first.
Well done man , I didn't expect this much clarity in just 13 minutes, but you explained everything perfectly. Thanks
Saw Angular Logo with caption (best framework ever)..
that's why I'm subscribed. lol
1:35 @BenAwad
was about to say that too
Glad I wasn't the only one who thought about this, what would he say about it lol
Yeah watching both of these seem like heresy on some level
Another awesome video. I love React hooks. I just recently started diving into writing custom hooks.
It has been an excellent way to create reusable functionality as well as not stuffing all the logic in one file.
Thanks for this video.
For non-native English speakers, I'd recommend watching the video at 0.75 speed.
Pretty dense (yet high quality) information.
Many videos I saw but this one is simple specific and easy to understand… thanks
So simple and useful! Thanks a lot for explaining these things in the most understandable manner.
brilliant to watch just before a interview :)
Most useful video I’ve watched on hooks
I just posted a video on a similar topic (in 2023) - maybe this could be interesting for you as well. 😉
- 1:34
- Ben Awad has entered the chat
Thanks!
I always come back to this video to a fast/clean explanation of react hooks ! Thanks for the content my man ! Amazing :)
1:33, yes! Angular the best framework ever ❤❤❤❤❤❤❤❤❤
Yeaaah
Love the pace you have in your videos. And the visuals is just stunnig
I wish I had seen this video when I began learning hooks. Took me months of study and practice to understand them fully. This would have been a good entry point. Most tutorials fall short.
5:50 - for alert() to run when component is removed from DOM, second argument (dependencies) of useEffect() should still be empty array []. Without empty array dependency code does not work as intended.
The channel is amazing, this should be corrected.
I kinda struggled to understand how to create a custom hooks before, but now I understand it after watching your explanation thank you :)
Thank you for this video - as a boomer coming from the old class-based ways, I wasn't up to speed on all of the built-in hooks.
Every second is worth watching this channel.❤️
Hell yeah bro. Angular saves me so many headaches. 🙏😍
🥕
@@danieloliveira9815 I just got another Angular contract. 😍☝️
@@kettenbach 👏
I am watching this before my interview and it is helping me with my anxiety...
I am feeling calm...
I stumbled on this video but I’m glad I did!
I was looking for ways to implement hooks in my program but had no idea what to do with them. When I watched this video I had a “Oh, THAT’S what it does” moment occur multiple times.
Thanks for making this!
This video really helped me a lot, Im doing the Meta certification but they guy explaining this on the course sounds like an NPC.
Thank you Jeff!
Thank you for this! Used this a refresher and absolutely loved it. Wish we had a few more examples of each hook.
After last working with React in 2016, coming back to it again is super confusing. But this video got me up to speed real quickly!
You always manage to put out a video that i just need in that exact moment. Simply amazing. Keep up the good work
This channel is the fresh breath of air for devs♥️
Thanks ! This is so comprehensive and entertaining.
I have a feeling that you will add much value to my life. Liked and Subbed.
best of the best. I never understood each of them but now I got a grasp about it.!
Really easy to understand and helps to point me in the right direction. For a problem, I was stuck on solving a UI component not updating by itself till I click on another component.
Your UseEffect explanation was brilliant.
1. useState
2. useEffect
3. useContext
4. useMemo
5. useCallback
6. useRef
7. useReducer
8. useImperativeHandler
9. useLayout
10. useDebugValue
not in order of the video.. tho. lol
Very informative video. Thanks!!!
Even 8 and 9 is described as rare, I actually use these very often when building more complicated UI/UX.
Woaw, the best 13 mins of my entire life :D
I have survived just with useState, useEffect and useReduce hooks, and now I can try to understand the others to implement in my projects by watched this video.
Wow, I had a really hard time figuring out precisely how hooks were working until I found this video. It's so clear and explaining the fundamentals (the key). I'm literally looking for a way to join any newsletter you have because I love the way you communicate complex principles.
I am learning React and this is the video I needed
This is amazingly easy to understand with just 10 minutes!! Thanks a lot great man!
Angular bois finally got some love.
Dozens of us are so happy. DOZENS!
@フルブライトケネス what r u talking about? V12 has just launched.
srsly your content is insane man. thank you thank you thank you
you are ridiculously good at explaining things succinctly in a short amount of time - thank you for this great content.
I'm not a native speaker, so it's sometimes hard to understand for me. But I'm surprised how clearly you explained hooks. It was realy useful. Thank you..
Excellent video on React Hooks.
This was amazing, it took me over an hour to write down the notes so much knowledge
One thing to note about `useCallback` is that it isn't _just_ needed to improve performance. Sometimes, we need it because a useEffect depends on the function which can cause infinite loop scenarios. So basically, useCallback can save us from these infinite-loops!
Yeah, but only if you include all functions/variables in your dependency array, like EsLint/TS wants you to do..
To avoid bugs in your case you should rather use setCount(prev => prev + 1) instead of setCount(count + 1).
True👍
Can you elaborate on how this method results helps avoid bugs compared to the other method?
@@arpansaha5638if you need to set state based on previous state, you should use a callback function that receives a previous state as the first argument
@@arpansaha5638 Beacause if you run setCount(count + 1) twice very close to each other, count won't be updated for the second call. Meaning count will be added 1, instead of the expected 2. Meanwhile, if you use prev, React ensures the count is updated before the next call.
Great/quick explanations of each hook, super helpful thanks
Maan! I love taking tour in your channel you deliver clean and conscious contents.
easy to understand,good hook summary for begginers !
Get this man a medal!
Very crisp and precise as always 👌👌
Even if these videos don't explain stuff in detail, they sure give an overview of the topics......which is a huge deal to IT students like me whose textbooks don't even cover Git or ES6!!!!
Thanks for the Video. I know now that i will stay with Svelte.
Where was this video a year ago!!!!!! EXCELLENT!!!!!! 10000/10
Man! That "Angular best framework ever" was the only thing I needed after watching few Ben Awad videos.
You have no idea how much I need this
Done thanks
React hooks can be used only at the top level inside the functional component function definition.
Hooks:
useState
useEffect make sure to provide dependencies array, if no dependencies then pass empty array
useEffect can have a cleanup function by returning a function from the useEffect callback, will be called when component un mounts
useContext lets you share state from a parent component to child components without having to pass props down
useRef use when you want to grab a reference to an html elements and programmatically. useContext lets I access the context from the context provider up the tree
useReducer is a better alternative to useState as it allows you to dispatch events or actions from ui elements then handle these events in the reducer function. useReducer takes the reducer function which takes the state and the dispatched action so you can do a switch case in the reducer and handle them
useMemo to cache computationally expensive values so that they aren’t recalculated on every render. Takes a dependency array like useEffect to decide when to recalculate the value
useCallback is like useMemo but it caches an entire function definition. When you define a function in your component, that function gets redefined after every render. useMemo causes the return value to be cached, so the function isn’t run on every rerender but with useCallback the function isn’t redefined on every render. This is useful when ui elements have a reference to that function like if it’s an onclick handler. When that function is redefined the component that has reference to it will get rerendered and useCallback prevents this, it is useful when many ui elements have reference to that function
useImperativeHandle