Multistep Form Custom Hook With React And TypeScript

  Рет қаралды 158,049

Web Dev Simplified

Web Dev Simplified

Күн бұрын

Пікірлер: 164
@Alex-uc1mp
@Alex-uc1mp 2 жыл бұрын
Danke! Wow 😲 this is exactly what I was looking for today. Destiny 😄
@coderyan
@coderyan 2 жыл бұрын
Love it when a tutorial just comes out at the right time to solve a problem
@WebDevSimplified
@WebDevSimplified 2 жыл бұрын
Glad I could help!
@SeanCassiere
@SeanCassiere 2 жыл бұрын
The fact that you are making React tutorials using Vite and Typescript is mega awesome 👍🏼👍🏼👍🏼. Big up to you man.
@arshiagholami7611
@arshiagholami7611 10 ай бұрын
nothing beats good ol' JS. typescript is for the weaks (writing this comment while waiting for intellisense finish loading)
@PrincessStache
@PrincessStache 2 жыл бұрын
Thank you so much! Typescript tutorials are so needed. I really appreciate how you go through each step and keep going back to get the needed functionality.
@WatchMeLearnIt
@WatchMeLearnIt 2 жыл бұрын
Great video! Would LOVE to see a part 2 of this where you implement some kind of fetch request like you talked about at the end!
@niklassoderberg2168
@niklassoderberg2168 2 жыл бұрын
This one was hard, but im learning typeScript so.. One of your best videos and I watch close to all of them!
@muhayminkhan7063
@muhayminkhan7063 2 жыл бұрын
Today i've learned a best way to do some things thanks to you (1) React-simple-search-filter (form your other video) (2) Multistep-form-React-Typescript (This is the Brilliant way I guess ) ❤❤
@kingsleyovo8889
@kingsleyovo8889 2 жыл бұрын
Nice videos as always I have found that kyle slowly transform the language from js to ts…. Ts should be the greatest adapter for learning Java and js
@EvertJunior
@EvertJunior 2 жыл бұрын
Great video. I usually work with a react-hook-form library and this video gave me some insights on how it probably work under the hood.
@developer_hadi
@developer_hadi 2 жыл бұрын
Bro thank you so much this is very simple and easy, please keep sharing things like this in react and typescript because it really makes my life easier as a beginner in react
@coderyan
@coderyan 2 жыл бұрын
Good luck with your journey with learning React!
@developer_hadi
@developer_hadi 2 жыл бұрын
@@coderyan thanks
@oxynetz
@oxynetz 2 жыл бұрын
Enjoyed this format quick fast under 30mins, packed with useful tips and content. Well worth it. Thanks man
@andresvodopivec5950
@andresvodopivec5950 6 ай бұрын
Great video. You solved a problem I had in 28 min. Appreciated for focussing more on the react part, instead of the styling part. Makes it easy to follow the video. I decided to sibscribe to your channel after this. Great content. Thanks
@FalioV
@FalioV 2 жыл бұрын
Awesome tutorial dude! I dont know why took me so long, but now I'm subscribed!
@darkNovaskar
@darkNovaskar Жыл бұрын
Gotta say thank you for having a clear easy to understand voice. All these KZbinrs got thick azz accents and this coding shit is hard enough 😤
@elelan
@elelan 2 жыл бұрын
This is what I've been searching everyday for past few months...! React with Typescript and Vite
@chinmoykr
@chinmoykr 2 жыл бұрын
When vite ask you for project name type "." then it will create your project in current directory. no need to move your files
@nabinsaud4688
@nabinsaud4688 2 жыл бұрын
He know bro .but he want to make beginner friendly
@chinmoykr
@chinmoykr 2 жыл бұрын
Ohh nice.. Maybe it will help someone.. not him but someone...
@nabinsaud4688
@nabinsaud4688 2 жыл бұрын
@@chinmoykr yes Lets meet bro show your github link
@TheZayzoo
@TheZayzoo 2 жыл бұрын
I didn't know, thanks for the free information.
@guestofallah7661
@guestofallah7661 2 жыл бұрын
@@nabinsaud4688 so the comment need some expert to understand it ?
@anand_dudi
@anand_dudi 7 ай бұрын
We need more this type of tutorial to solve problems in real world application. thanks kyle
@olexandrperlov6426
@olexandrperlov6426 Жыл бұрын
this type of multi step form is so clean and ease that I can't be happier and I will definitely use it in my project. Thank you so much
@mountaingoatgaminggg9395
@mountaingoatgaminggg9395 Жыл бұрын
Loved this tutorial, used a lot of the concepts here in my irl project I am working on, now just gotta learn how to intergrate a signature pad and how to save that and Im golden! Good Stuff
@bravo1oh1
@bravo1oh1 2 жыл бұрын
I literally am needing this right now
@clarkdnro
@clarkdnro 2 жыл бұрын
What a beautiful Form you created. Wow, very beautiful
@kelvink96
@kelvink96 9 ай бұрын
I have been looking for such a tutorial. Thanks so much for this 👍👍
@kartik7775
@kartik7775 2 жыл бұрын
No matter how great a job I land in future, I'll always be grateful for your lessons and will dedicate my success to you. 🙌
@whatsapp176
@whatsapp176 2 жыл бұрын
Helpline 📲📩⬆️ Questions can come in⬆️
@kunfun1916
@kunfun1916 2 жыл бұрын
Nice tutorial! I rewrote this in solid-js. Learn a lot.
@philipjamesajagabos2519
@philipjamesajagabos2519 2 жыл бұрын
A second video from you that gives me good head-ups to understanding react. Thanks for the good content.
@milendonchev737
@milendonchev737 2 жыл бұрын
Great video as always my friend! Quick tip (you probably know, but anyway) - When you create a Vite app, which you want to be in your CWD, when it asks you for name of project, just type a dot (".") and it will create the project in there. :)
@coderyan
@coderyan 2 жыл бұрын
Nice tip! Something I can use in future projects.. pretty new to Vite
@fabianpetersen2452
@fabianpetersen2452 Ай бұрын
I did this the other day with another tutorial because i wanted to learn how to do this. Boy was it a royal complicated mess. The logic was hard to follow, i used custom hooks like you did otherwise theres so much code you get dizzy if there's many fields per form 😂😂😂. This was simple aka your name and easy to follow if you need to reuse this months later..thanks bud
@marvelBoy1909
@marvelBoy1909 2 жыл бұрын
Need more of these react typesrcipt vite projects 🔥 👍
@gyros9162
@gyros9162 Жыл бұрын
Thank you so much! I've used your approach in my student project and mentioned you in github )
@gray_hat
@gray_hat 2 жыл бұрын
There is also a ReactPropsWithChildren interface your props could extend. That automatically adds a children field to your props
@piyushaggarwal5207
@piyushaggarwal5207 2 жыл бұрын
It is PropsWithChildren actually. Thanks!
@piyushaggarwal5207
@piyushaggarwal5207 2 жыл бұрын
There is one problem though what if we want the children to be required. It is optional in the type you mentioned.
@gray_hat
@gray_hat 2 жыл бұрын
The type for children is ReactNode If children is required by your usecase then you can potentially add `children: ReactNode` without using PropsWithChildren. Although for such use cases you probably have a specific type you might wanna use for children and not the generic one. So you can do that too.
@uome2k7
@uome2k7 9 ай бұрын
​@@piyushaggarwal5207 you can use the Require util type to set fields of a type to be required.
@martinkoller3595
@martinkoller3595 2 жыл бұрын
Great tutorial! I Appreaciate that a lot.
@TheFirstUserHandle
@TheFirstUserHandle Жыл бұрын
Great tutorial. Love your stuff. This helped me out significantly.
@EricShans
@EricShans 2 жыл бұрын
Great video, took a bit but I fully understand it !
@pmioduszewski
@pmioduszewski 2 жыл бұрын
One day this video will save your day
@kanishka5948
@kanishka5948 2 жыл бұрын
Just what I needed 😌
@fipabrate
@fipabrate Жыл бұрын
This helped me a lot. Thank you!
@simplyabdou8425
@simplyabdou8425 2 жыл бұрын
great video Kyle
@yevhenlysenko7444
@yevhenlysenko7444 2 жыл бұрын
More similar lessons with TS are needed)
@baolee4622
@baolee4622 Жыл бұрын
Amazing explanation!
@kathirmldata7411
@kathirmldata7411 2 жыл бұрын
Happy Aayutha Pooja 🥰
@beinerthchitivamachado9892
@beinerthchitivamachado9892 2 жыл бұрын
Kyle, you're the GOAT!
@joaoarthurbandeira
@joaoarthurbandeira Жыл бұрын
Hey Kyle, - How can i implement this in combination with Zod, for example? - Also, how could i modify the code if i want to use Redux toolkit for this? - And how can i implement the 'goTo' part so i can quickly jump to a specific part of the form? - Finallly, Will the state be preserved even if the user refreshes the page or - in a system - log out and log in again? Lots of questions haha, but thanks anyway!
@focusroom_
@focusroom_ Жыл бұрын
Amazing as always
@piyushaggarwal5207
@piyushaggarwal5207 2 жыл бұрын
Loved the tutorial
@plamenpetkov746
@plamenpetkov746 2 жыл бұрын
What's the alternative for steps: ReactElement[] from the custom hook in ReactJS, cuz I don't know TypeScript?
@blogpegaaki
@blogpegaaki 2 жыл бұрын
Amazing friend!
@tomasburian6550
@tomasburian6550 6 ай бұрын
Strange that I'm getting TS errors when I try to write the same code, but otherwise this was a great lesson. I'm trying to implement it into Next.js right now so this was a good starting point for me. With Next js it gets more complicated because of SSR and the use of hooks and translations but it can be done.
@kinamartinez
@kinamartinez Жыл бұрын
Thank you very much, its an amazing video, very useful
@khurshedaalam7478
@khurshedaalam7478 Жыл бұрын
Awesome bro love from india
@mohammadkhakhsoor2068
@mohammadkhakhsoor2068 6 ай бұрын
thanks , wish it had other types of inputs and also validation please create one with more detail , like when in one of the steps there are 3 itmes to choose between one of them and only one of them should be selected and go to the next form
@rosmildolopes3985
@rosmildolopes3985 6 ай бұрын
could you do any validations?
@UnderstandingCode
@UnderstandingCode 2 жыл бұрын
1m subs congrats
@paulthomas1052
@paulthomas1052 2 жыл бұрын
Great video. Thanks.
@אילהוייס
@אילהוייס Жыл бұрын
Thank you very much it helped me a lot☺
@Mutoforma
@Mutoforma 2 жыл бұрын
Awesome! Around 26:30, how were you highlighting both instances of 'email' in the value/onChange props?
@ongangminh6627
@ongangminh6627 2 жыл бұрын
Ctrl + D, bro
@whatsapp176
@whatsapp176 2 жыл бұрын
Helpline 📲📩⬆️ Questions can come in⬆️
@eliamzg
@eliamzg 2 жыл бұрын
This would have been great 2 years ago before I had to come up with my own as a junior react dev
@GMPGIRI
@GMPGIRI 2 жыл бұрын
Please more React + Typescript projects. 🙏
@benny-shen
@benny-shen 2 жыл бұрын
Great content
@artemryabykh
@artemryabykh 10 ай бұрын
Thank you for the guide! Could you please advise if we can use custom validation with this form?
@nandoomb
@nandoomb 2 жыл бұрын
Great, but... If you put your buttons (next, back,...) inside your "Step Component". How could you do that?
@yahiachougui6074
@yahiachougui6074 2 жыл бұрын
Great video, is there a way to pass the fnction next() or a function goTo() to one of the step elements? that way when you have like a summary step where you review all the information you can go back to a particular step and change the information in it?
@pofiabel9526
@pofiabel9526 2 жыл бұрын
Hi I am currently having same challenge. Can someone anyone please respond to this question. Thanks in anticipation.
@amitakolkar2389
@amitakolkar2389 2 жыл бұрын
This is a great way to create a multistep form. Thanks for sharing. How can we handle a large forms with different sections? Here as well you have maintained one single state at parents and its updating whole object every onchange event. {...pre, ... currentField} Having soo many inputs and those are dependent on each other. As we are passing a object down it rerenders all children components. We can pass a primitive data to children and use useCallback hook at the top. But still it doesn't seems like best way. Can you please create a video on that about how to handle a large forms with best performance.
@whatsapp176
@whatsapp176 2 жыл бұрын
Helpline 📲📩⬆️ Questions can come in⬆️
@deatho0ne587
@deatho0ne587 2 жыл бұрын
At 25:42 you have a lot of repeated code that works, but is there a better way in React? I have been working in Angular for quite some time and generally make arrays of objects that make repeated stuff. Something like [{field: 'localZip', maxLength: 5, type: 'number'}, {field: 'city', maxLength: 30, type: 'text'}]. That array would make all the HTML elements and the labels would use the field to make something like "Local Zip" and "City".
@Zikakoo
@Zikakoo 2 жыл бұрын
Yes, a cleaner way to do it is to create an array of objects from the interface keys and fill in the needed information per input (label, required, value etc whatever is needed). Passing the values as an object you can access the inputs own value with the bracket notation. Then loop through that array of objects to create the inputs needed.
@turbulantarchitect5286
@turbulantarchitect5286 2 жыл бұрын
Hi Web Dev Simplified, can you please make a series on how to create reusable form component, input components, error/validation handling with Hooks. Thanks
@whatsapp176
@whatsapp176 2 жыл бұрын
Helpline 📲📩⬆️ Questions can come in⬆️
@zixuanchen8898
@zixuanchen8898 2 жыл бұрын
Very great tutorial, I want to ask about how to let the code auto format when on save?
@coderyan
@coderyan 2 жыл бұрын
In most code editors, you can access the "preference" tab, and then you can search for "on save" -- often, you'll see an option to enable format on save
@zixuanchen8898
@zixuanchen8898 2 жыл бұрын
@@coderyan Thank you!
@penguinthesolver1405
@penguinthesolver1405 Жыл бұрын
Hello! Thanks for tip, but how to implement custom validation for every form in this scheme?
@mddx56
@mddx56 7 ай бұрын
Thank you!!! 🙌🙌
@gopinathkrm58
@gopinathkrm58 2 жыл бұрын
thanks and great, and I have a doubt from ur Spotify clone video, it is playing only for 30 seconds but how to play it fully. I used audio_preview_url from response data.
@deveshwarzard9781
@deveshwarzard9781 5 ай бұрын
if we have to add react-hooks-forms and zod validation what would be apporach then
@xJAYDENFx
@xJAYDENFx Жыл бұрын
thank you for this great tutorial sir, please why can i persist data for checkbox ?
@shivamrathore8291
@shivamrathore8291 2 жыл бұрын
Hey, thanks for the video. (apart from video's topic) I am in a little bit of confusion in CSS CONFUSION : can we edit/modify the input box blinking cursor I want to change the input box cursor blinking animation style from blink to expand (like VS code) is this possible? if yes then please make a video or at least tell me how can I achieve this??, if not then why??
@abdullahrafique2883
@abdullahrafique2883 2 жыл бұрын
hey thanks so much for this wonderful tutorial. what if I wanna write the custom validation to any of the individual form field?
@deepikarao2593
@deepikarao2593 7 ай бұрын
How would you use formik with this stepper function for validations
@carolinatavares1843
@carolinatavares1843 2 жыл бұрын
do you think this project could benefic of using useReducer instead of useState?
@Lichkuroro
@Lichkuroro Жыл бұрын
Hey Chief!! , im not using, typescript and when i send the steps from app to useMultiStepHook, it is received as an array of objects, so console.log(steps) reads its info, but console.log(steps.lenght) is undefined.. heres what inside steps [ { '$$typeof': Symbol(react.element), type: 'div', key: null, ref: null, props: { children: 'One' }, _owner: null, _store: {}}, {... }, {...} ] but steps.lenght is undefined.. thnx in advance
@zakidzz
@zakidzz 2 жыл бұрын
please make a course on typescript bigginer and advanced
@Anushkai1
@Anushkai1 Жыл бұрын
It great. Thank you very much
@szymonoleszek2086
@szymonoleszek2086 2 жыл бұрын
Why did you switch to vite? Is CRA dead now? How are the things look like with setting up the react projects now?
@SeanCassiere
@SeanCassiere 2 жыл бұрын
CRA isn't quite dead yet, but you really should be using Vite instead. Since Vite uses ESBuild the dev experience is much faster. Also, it doesn't give you foot guns like polyfilling node_modules into the client which could create some unintentional mess ups.
@juanita8149
@juanita8149 2 жыл бұрын
Any sources on how to accomplish this with Select? Specifically, when the Select is in a separate component?
@rosmildolopes3985
@rosmildolopes3985 6 ай бұрын
Can I use "useForm"? like "register" for example? cause I need all inputs are completed
@AMoktar
@AMoktar 2 жыл бұрын
Amazing thanks 🙏
@mustak_085
@mustak_085 Жыл бұрын
@wudao88
@wudao88 Жыл бұрын
Thanks King
@sandeepsinghmehra3237
@sandeepsinghmehra3237 2 жыл бұрын
How to add routing and change components with routing within multistep in react-router v6?
@SachinYadav-yx1rc
@SachinYadav-yx1rc Ай бұрын
What if you refresh it would go to step 1 if you're at step 3
@anaordonez7906
@anaordonez7906 Жыл бұрын
what does the & mean when he declared the UserFormProps??? type UserFormProps = UserData & { updateFields: (fields: Partial) => void; }
@Distortie
@Distortie 2 жыл бұрын
Anyone have issue with pages 2 and 3 not keeping their data when going back and forwards through the buttons? the data object gets updated.. just not the data staying inside the input fields
@karis7539
@karis7539 2 жыл бұрын
Would be so much cooler with carousel animation
@eddyelamin9015
@eddyelamin9015 2 жыл бұрын
Hi Kyle can you help me with this mongoose error : Task validation error path content is required Im on version 6.6.5 btw
@nirajgurung8348
@nirajgurung8348 Жыл бұрын
How can we add frontend validation in this form?
@oleksiihm
@oleksiihm 2 жыл бұрын
Thanks so heplful!
@leonitshaqiri9671
@leonitshaqiri9671 9 ай бұрын
How to achieve this results with Formik and Yup validation
@awekeningbro1207
@awekeningbro1207 2 жыл бұрын
Is there a reason why is the form data state and the form data handler not put in the hook?
@SeanCassiere
@SeanCassiere 2 жыл бұрын
That is because the hook is being used purely for managing the logic of the multi-step process. This would then allow for multiple independent multi-steps forms sets to be implemented without having to duplicate and manage that logic. Plus the form state and submit stuff could change quite abit depending on the type of info being collected and is better left to the dev to handle that individually.
@Alyaman_Accounting_System
@Alyaman_Accounting_System 2 жыл бұрын
awesome thank very match
@mr_parth_dadhich
@mr_parth_dadhich Жыл бұрын
How to use that goTo Function ??
@kanishkkumar535
@kanishkkumar535 Жыл бұрын
you are fast AF
@amirulidzham
@amirulidzham 2 жыл бұрын
Angular not supporting vite yet?
@bigguns845
@bigguns845 2 жыл бұрын
How can i build a booking appointment for a doctor office
@irfansaeedkhan7242
@irfansaeedkhan7242 6 ай бұрын
custom error messages missing which should also disable next button
@devByDash
@devByDash 7 ай бұрын
thank u so much sir
@justpeace7852
@justpeace7852 2 жыл бұрын
Лайк не глядя
@michaeltrembovler8301
@michaeltrembovler8301 Жыл бұрын
Grate. Thank you !!!
Top 6 React Hook Mistakes Beginners Make
21:18
Web Dev Simplified
Рет қаралды 586 М.
React Hook Form - Complete Tutorial (with Zod)
28:22
Cosden Solutions
Рет қаралды 145 М.
Мясо вегана? 🧐 @Whatthefshow
01:01
История одного вокалиста
Рет қаралды 7 МЛН
Правильный подход к детям
00:18
Beatrise
Рет қаралды 11 МЛН
Enceinte et en Bazard: Les Chroniques du Nettoyage ! 🚽✨
00:21
Two More French
Рет қаралды 42 МЛН
React Hook Form (+ Zod) - Complete Tutorial
31:21
ByteGrad
Рет қаралды 109 М.
How To Handle Permissions Like A Senior Dev
36:39
Web Dev Simplified
Рет қаралды 324 М.
5 CSS Tips & Tricks for better Responsive Web Design
9:39
Coding2GO
Рет қаралды 35 М.
Speed Up Your React Apps With Code Splitting
16:50
Web Dev Simplified
Рет қаралды 398 М.
Forms with React 19 and Next.js
9:13
leerob
Рет қаралды 36 М.
This is the Only Right Way to Write React clean-code - SOLID
18:23
Build a Multistep Form in NextJs Using react-hook-form and ZOD
20:31
Attention in transformers, visually explained | DL6
26:10
3Blue1Brown
Рет қаралды 2 МЛН
Мясо вегана? 🧐 @Whatthefshow
01:01
История одного вокалиста
Рет қаралды 7 МЛН