React Hook Form (+ Zod) - Complete Tutorial

Поделиться
HTML-код
  • Опубликовано: 6 июл 2024
  • 👉 NEW React & Next.js Course: bytegrad.com/courses/professi...
    Learn:
    1) Traditional form (without React Hook Form)
    2) Form with React Hook Form
    3) Form with React Hook Form and Zod
    4) Form with React Hook Form and Zod and server-side errors
    Complete code: github.com/ByteGrad/react-hoo...
    Hi, I'm Wesley. I'm a brand ambassador for Kinde (paid sponsorship).
    👉 Add authentication to your app FAST: bit.ly/3QOe1Bh
    👉 NEW React & Next.js Course: bytegrad.com/courses/professi...
    👉 Professional JavaScript Course: bytegrad.com/courses/professi...
    👉 Professional CSS Course: bytegrad.com/courses/professi...
    👉 Discord: all my courses have a private Discord where I actively participate
    🔔 Email newsletter (BIG update soon): email.bytegrad.com
    ⏱️ Timestamps:
    0:00 Intro
    0:27 Traditional form
    8:50 Adding React Hook Form
    17:59 Before & After
    18:54 Adding Zod
    27:25 Adding server errors
    #webdevelopment #programming #coding

Комментарии • 138

  • @ByteGrad
    @ByteGrad  4 месяца назад +3

    My Professional React & Next.js course is OUT NOW now! Find it here: bytegrad.com/courses/professional-react-nextjs -- this is the #1 resource to master the latest React & Next.js, my absolute best work.

  • @TheLondekZdroj
    @TheLondekZdroj 7 месяцев назад +26

    Man! you are a lifesaver. There's nobody else on YT who can compress so much useful knowledge in an easily digestible format. Well done!.

  • @FGA-47
    @FGA-47 11 месяцев назад +80

    This tutorial is by far the most exceptional one I've come across. The meticulous breakdown into step-by-step segments and the incredible effort you invested in creating it are truly remarkable. Thank you immensely for your dedication. Please continue the great work!

    • @thegoncaloalves
      @thegoncaloalves 9 месяцев назад +2

      It was definitely not easy to find a good tutorial for nextjs, react-hook-form and zod. This is a great resource!

  • @editin232
    @editin232 10 месяцев назад +19

    You going trough the traditional way of creating a form is so useful to me as a new developer.

  • @VLADICA94KG
    @VLADICA94KG 9 месяцев назад +9

    I can't emphasize enough how invaluable your videos are and how much I learned from them. Thanks a lot and keep up the great work!

  • @Julia_K7
    @Julia_K7 10 месяцев назад +9

    This is an amazing tutorial! I tried watching a few different ones about react-hook-form and zod before this one and none of them could explain the topic as clearly as you did!

  • @user-fg8jh4do8j
    @user-fg8jh4do8j 7 месяцев назад +6

    I love the way you explain the Why's we moved from one approach to another in ur videos... For example here with why from traditional controlled component to react hook form to react hook form with zod...u can't imagine how valuable that is so we don't just memorize patterns without knowing why we do things a certain way... Keep up the good work man

  • @user-ru8hn9hb5c
    @user-ru8hn9hb5c 9 месяцев назад +3

    Waoh, single handedly teaching React form validation in 30 minutes with clear explaination.

  • @Fishamble
    @Fishamble 8 месяцев назад +2

    I think I am finally at the stage where I can appreciate the videos you make. They had gone over my head in the past, but now I find them excellent. Thanks and keep up the good work.

  • @songhyeonjun2803
    @songhyeonjun2803 10 месяцев назад +7

    this course is really well organized and should be popular more!

  • @musiuralamopu9589
    @musiuralamopu9589 5 месяцев назад +2

    I hardly comment on videos. But this channel is a gem store surely! Mentioning actual issue, resolving with robust and sophisticated solution and also no unnecessary single words! Very very grateful to you! 🖤

  • @VincentFulco
    @VincentFulco 10 месяцев назад +6

    Outstanding, clear, concise. Kudos!

  • @SaurabhThapliyal-pu3vs
    @SaurabhThapliyal-pu3vs 4 месяца назад +1

    I must say, this RUclips tutorial on React Hook Form and Zod validation is hands down the best beginner-friendly resource I've come across! The explanations were crystal clear, and I now have a solid understanding of how to integrate these tools into my projects. Huge thanks to you Sir!

  • @jrmayol857
    @jrmayol857 11 месяцев назад +4

    Awesome vid! The calmness of the voice, zen mode.

  • @alterickoo
    @alterickoo 9 месяцев назад +2

    Really enjoyed the way you structurally explained the concepts and in a beginner friendly way. This is a great tutorial! Thanks man!

  • @janpapaj4373
    @janpapaj4373 2 месяца назад +1

    You are the GOAT of nextjs tutorials, amazing

  • @captainnoyaux
    @captainnoyaux 5 месяцев назад +2

    I love your content I'm forwarding it to my colleagues that don't know yet some stuff you cover, thanks a lot !

  • @user-nd9ce7ul4e
    @user-nd9ce7ul4e 8 месяцев назад +1

    Very clear and accessible explanation, with a live example. Everything is strictly to the point, without unnecessary water. Thank you very much!!!

  • @AcromondX
    @AcromondX 7 месяцев назад +2

    I love your style of teaching

  • @neilmerchant2796
    @neilmerchant2796 9 месяцев назад +3

    I really appreciate how effectively you explain every step and all surrounding context. 12/10

  • @Milo_1010_
    @Milo_1010_ 7 месяцев назад +1

    I just discovered your channel and i have to say it is the most clean and comprehensive tutorial i had on React Hook Form. Thank you a lot for your dedication, i just subscribed !🎉

  • @rezaainulzaki9651
    @rezaainulzaki9651 10 месяцев назад +4

    as always, you explained really well and beginner friendly

  • @Anonymousssss368
    @Anonymousssss368 10 месяцев назад +7

    The way of your teaching is superb. Firstly see whats the problem is by brute force Solution then think why to shift and how to shift toward clean and efficient solution.

  • @edh9500
    @edh9500 Месяц назад +1

    You're a savage!! Thanks so much. Every sentence is valuable. On top of learning what I need to do, I pick up so many tips in how you write you code that I advance as a developer.

  • @eliucastillo6976
    @eliucastillo6976 8 дней назад +1

    Bro, this is Gold (y)

  • @ericaugusto5640
    @ericaugusto5640 6 месяцев назад +1

    What an amazing tutorial, it's always easier for me to understand a concept when the problem is presented first. Thanks!

  • @spongebob93lover
    @spongebob93lover 8 месяцев назад +1

    awesome tutorial!! I really like that you showed the traditional way of dealing with forms and compared the before/after. The explanation is very detailed and helpful for beginners. thank you!

  • @alsherifkhalaf7385
    @alsherifkhalaf7385 2 месяца назад +1

    You are simplify things and this helps me understand very well ❤🎉

  • @123123123tomiasd1231
    @123123123tomiasd1231 8 месяцев назад +1

    Great video with great examples!!! loved it

  • @buraxta_
    @buraxta_ 2 месяца назад +1

    You're the best, we love you!

  • @zubaydullookhunboboev8576
    @zubaydullookhunboboev8576 8 месяцев назад +3

    Amazing tutorial. Your way of understanding by comparison from traditional to modern form with react hook form is great methodology. Thanks bro!

  • @kefamutuma6516
    @kefamutuma6516 3 месяца назад +1

    Thank you . That was golden

  • @DanielEmenikeCodes
    @DanielEmenikeCodes 11 месяцев назад +5

    Your explanations are top-notch! Just subscribed. Thanks for the fine details

  • @alionar60
    @alionar60 9 месяцев назад +1

    Wow! You're great, you explained it so well!

  • @Fanaro
    @Fanaro 10 месяцев назад +3

    Dang, with Zod, this looks really sharp.

  • @aymenbachiri-yh2hd
    @aymenbachiri-yh2hd Месяц назад +1

    Thanks man, you're legend

  • @seniorui
    @seniorui 4 месяца назад

    Well, I like this video. You show the negative case and the example of how to do it well. Great job!

  • @BritainRitten
    @BritainRitten 11 месяцев назад +2

    Excellent walkthrough

  • @zaeemahmad910
    @zaeemahmad910 Месяц назад

    well explained
    Subscribed 💚

  • @Julieyudowitch
    @Julieyudowitch 10 месяцев назад +2

    Thank-you this was very easy to follow

  • @lalasca6358
    @lalasca6358 8 месяцев назад +1

    Thanks.. Grad great explanation.

  • @user-bk3gr1nl2s
    @user-bk3gr1nl2s Месяц назад +1

    Superb thank you sir..

  • @meka4996
    @meka4996 9 месяцев назад +2

    Amazing!!! You are the man!

  • @demembree
    @demembree 8 месяцев назад

    Been stuck for one week with the first method (without library) and state not updating well, errors still displaying when the form is well filled. You saved me! You have the best react video.

  • @elianismedina
    @elianismedina 8 месяцев назад +1

    Thanks a lot for this video, very professional. You are a really good teacher . I understood everything. I have been watching your video for a while and I feel you are a pro

  • @Teckstudio
    @Teckstudio 11 месяцев назад +4

    Awesome tutorial! As always!!! I love what you are doing 😍
    One remark to the error field of zod: There is the function .flatten() which reduces the overcomplicated zodError to a simple object with the keys .formErrors and .fieldErrors. Just using that .fieldErrors as the return value would then make your code much cleaner in my eyes. I only mention this because .flatten() is overlooked in many zod-tutorials even though it is really usefull. 👍
    Something like this:
    //On the server
    if(!res.success) return res.error.flatten().fieldErrors;
    //On the client (where errs is the return object from the server)
    for (let [key, err] of Object.entries(errs)) setError(key as any, { type: "server", message: err[0] });

    • @nasarissa749
      @nasarissa749 8 месяцев назад

      What do you do when err[0] is of type 'unknown'

  • @tonyeneh8194
    @tonyeneh8194 17 дней назад +1

    awesome! Thanks a lot

  • @SugengWahyudi
    @SugengWahyudi 6 месяцев назад +1

    really clear tutorial. Your way explains is amazing

  • @this-is-clem-fandango
    @this-is-clem-fandango 7 месяцев назад +1

    instant subscribe you're such a good teacher

  • @yuvalazaria
    @yuvalazaria 5 месяцев назад +1

    Just great🎉 thank you very much

  • @sandrogtz
    @sandrogtz 9 месяцев назад +1

    This was unbelievable helpful

  • @viniciusm.m.7822
    @viniciusm.m.7822 8 месяцев назад +1

    3:21 man, that's amazing, I've never seen it or even thought about it!
    Forte abraço do Brasil!
    God bless!

  • @treyrader
    @treyrader 5 месяцев назад +1

    Gosh man you're such a pro! totally a wizard

  • @rounakbhattacherjee5288
    @rounakbhattacherjee5288 4 месяца назад +1

    You earned a subscriber, what an explanation bro, what a comparison , keep up the good work buddy! Love from India❤

  • @HenryBabbage
    @HenryBabbage 9 месяцев назад +2

    Exactly the video I needed

  • @abdelfadeel0
    @abdelfadeel0 6 месяцев назад +1

    Great explanation

  • @pasinduvinsuka
    @pasinduvinsuka 7 месяцев назад +1

    The way you are explaining things are amazing 🔥🔥❤❤

  • @MrBl0m
    @MrBl0m 10 месяцев назад +1

    Thanks !

  • @nick-ui
    @nick-ui 10 месяцев назад +2

    This is really great example how to use zod with hook form package

  • @ytfriends7448
    @ytfriends7448 5 месяцев назад

    I dont know why people are missing such a good channel thanks for the video by the way💜

  • @techlearner-hs3ft
    @techlearner-hs3ft 2 месяца назад +1

    u really have great explanations, thanks a lot for helping me understanding react🙌

    • @ByteGrad
      @ByteGrad  2 месяца назад

      Happy to help!

  • @Pareshbpatel
    @Pareshbpatel 3 дня назад +1

    React Hook Form Tutorial. Compresenive and well explained. Thank you very much, Wesley.
    {2024-07-03}

  • @wasimrafik3535
    @wasimrafik3535 9 месяцев назад +1

    first video liked it so much so just subscribed it

  • @0xtz_
    @0xtz_ 11 месяцев назад +5

    👏🔥 amazing video 👏

  • @27sosite73
    @27sosite73 7 месяцев назад +1

    thank you

  • @ivanfranciscojara6071
    @ivanfranciscojara6071 9 месяцев назад +1

    I think I love you bro, great tutorial. 👍🏻

  • @ceeesmack
    @ceeesmack 6 месяцев назад

    I play this before I go to sleep because the monotone voice can help me fall asleep. I also played it to learn react hook form. It's a very good video for that too! ; )

  • @ezetenduwilliams7322
    @ezetenduwilliams7322 10 месяцев назад +2

    Good job bro. This was detailed properly. I'd start using zod. +1 subscriber for you

  • @ahmedkaram3829
    @ahmedkaram3829 10 месяцев назад +2

    good video and nice to share this knowledge

  • @adnanamin3666
    @adnanamin3666 9 месяцев назад +2

    The best! 👌😊

  • @supafast1314
    @supafast1314 6 месяцев назад +1

    It was a very good amount of value in a single and fast video, thank you! However It would be great if you make a Part ll adding a solution like SWR or React Query to handle the Fetch/mutation logic and talk about the that solutions as well as it is a great topic too! Thank agan 🙏

  •  11 месяцев назад

    Will the async method handleSubmit be awaited or how does that work, is the handle event prepare for async methods?

  • @rangerboi9715
    @rangerboi9715 7 месяцев назад +1

    Hey Wesley! Good day I loved your tutorial could you also show us how to work with forms where we need an array of forms when we need to fill for situations like adding multiple users.

  • @dannydg1985
    @dannydg1985 3 дня назад

    How do you implement this when also using server actions with useFormSate / useActionSate? I currently have an implementation using a client-side form action that calls trigger of react-hooks-form to validate the form.

  • @learner8084
    @learner8084 2 месяца назад +1

    Very useful video. Thank you !
    I used formik before. In formik, I can wrap the component so that I can have multiple level components and I can still pass the name of the field down and I can access formik. How can I achieve the same in React Hook Form ? Thanks.

  • @mohdsahil226
    @mohdsahil226 6 месяцев назад

    Thank you! Would you please do it with NextJs Server Actions instead of API route?

  • @youneshenni5417
    @youneshenni5417 10 месяцев назад +1

    You're becoming one of my favourite dev youtubers. PS you might need a better microphone.

  • @philipjohn2038
    @philipjohn2038 11 месяцев назад +1

    Perfect 👍

  • @anishgupta2659
    @anishgupta2659 9 месяцев назад

    In route.ts, the zod validation is to be used before the actual api call to the backend/database is made right?

  • @fooked1
    @fooked1 8 месяцев назад

    Any advice on handling localization with Zod and RHF?

  • @Fanaro
    @Fanaro 10 месяцев назад +1

    Super dope.

  • @dubekone
    @dubekone 10 месяцев назад

    Hello did you know if .refine can have multiple validations?, for example in the video u use .refine((data) => validation, {message, path}) how could i do multiple validations?

  • @shteev
    @shteev 8 месяцев назад +1

    Is it possible to do forms and form validation if you're using server components? I imagine you'd have to split the inputs out into use client components, but then how does it get connected to the useForm hook?

  • @toluwanimiadeyemo8099
    @toluwanimiadeyemo8099 11 месяцев назад

    New lesson learnt

  • @nutshellggdarken7114
    @nutshellggdarken7114 9 месяцев назад

    What do you use to get the autocomplete feature in vscode? :O

  • @dhirajavasthi6539
    @dhirajavasthi6539 7 месяцев назад +1

    your content is very helpful can you please help me with the below problem using zod and next js 13 or 14
    problem: How to read content of uploaded json file on react / next.js 13 or 14 using zod

  • @Fanaro
    @Fanaro 10 месяцев назад

    I'm really interested in seeing your approach to global state.

  • @abukhalidrifat3994
    @abukhalidrifat3994 Месяц назад

    During server side validations I need to manually check using if condition. Is there any shortcut for that?

  • @b-vo8zf
    @b-vo8zf 6 месяцев назад +1

    I love your videos. They always help me. Could you make a video about React Hook Form + Zod + React Select / Creatable, please?

  • @ajibadesokunbi1318
    @ajibadesokunbi1318 10 месяцев назад +1

    the link you dropped links to a next js react boilerplate

  • @alexreyes-cn9ru
    @alexreyes-cn9ru 8 месяцев назад

    this is great, I just got a question, can you tell us something about react-hook-forms with EXPO

  • @rishavsharma4206
    @rishavsharma4206 6 месяцев назад +1

    Hey Wesley,
    Fantastic content, have been looking for this tutorial and you my dear friend, nails every topic that you teach. 💓
    Would love to follow along with some initial code. Although, you have provided the final code, it would be great if you share initial code as well in a branch so we can also follow and code while learning from you.
    P.S. Please keep showering us with your knowledge. I am saving money to buy the new Next.js and React course, hopefully will be able to see you there as well. Thanks for everything Wesley 🖤

  • @keristang7208
    @keristang7208 5 месяцев назад

    Hi im newbie of nodejs, nextjs , i saw when you type in the visual studio code there is intellisence. how you got all the intellisense like visual studio. what plugin do you install?

  • @giannifed
    @giannifed 11 месяцев назад +2

    Great tutorial. Thank you

  •  10 месяцев назад

    what's your vscode color theme?

  • @user-bj1lu1jn6k
    @user-bj1lu1jn6k 6 месяцев назад

    Hello. What kind or name is there with the vscode extensions auto-complete code.

  • @pheisar
    @pheisar 11 месяцев назад +1

    so between using a server action and api post route, you'd recommend using a route handler?

    • @ByteGrad
      @ByteGrad  11 месяцев назад +4

      I don’t have a strong opinion on that now, but in future server actions will be the standard. I used route handler in this video because more people will be familiar with it

  • @saifullahrahman
    @saifullahrahman 10 месяцев назад

    There is one problem with this, .optional() wont work to make a field not required.
    I had to use a workaround for this.
    Any idea why it doesnt work?
    Also if the input is number, it gives errors.

  • @CistiC0987
    @CistiC0987 11 месяцев назад +3

    Great video! How can I get your nextjs course? From what I've seen from you, it has to be a good stuff

    • @ByteGrad
      @ByteGrad  11 месяцев назад +4

      Thanks. It’s coming out soon. 😉 Make sure you’re on the email list

  • @naveedalirehmani4135
    @naveedalirehmani4135 7 месяцев назад

    Great video, can you also make a video explaining how to use react-hook-forms with a UI library or a Framework? maybe shadcn.