Тёмный
Austin Shelby
Austin Shelby
Austin Shelby
Подписаться
Комментарии
@jmula1963
@jmula1963 10 дней назад
if i use storyblok is my site going to be slow af?
@AustinShelby
@AustinShelby 10 дней назад
It depends on how you are fetching the data. If you are using static site generation, it doesn't really matter where the data is being fetched from, as the pages will be generated ahead of time. Based on my experience, Storyblok seems to be fast enough, even when fetching the data on a per-request basis.
@AndersonNSilva-mw7kl
@AndersonNSilva-mw7kl 14 дней назад
It only works if the discriminator key is defined as a literal on the Zod schema. It's useless if you are using it with any other type.
@jlkinley
@jlkinley Месяц назад
did you delete my comment? Jeesh.
@AustinShelby
@AustinShelby Месяц назад
I did not. I saw your comment. It was something about extending a more complex schema based on a drop down such as a subscription, right?
@NadaII
@NadaII 2 месяца назад
After being told I'll be suing StoryBlok as of next week, this was perfection. Thank you.
@袁潤江
@袁潤江 2 месяца назад
Great tutorial. If I need to store objects removed from useFieldArray remove method to another array for subsequent use. How can I achieve this?
@sanamnawaz8324
@sanamnawaz8324 2 месяца назад
Thanks very very much, I learned both next and storyblok, it is very helpful, Thanks for your efforts , keep uploading such content
@AustinShelby
@AustinShelby 2 месяца назад
Awesome to hear that 🤩
@kakun7238
@kakun7238 3 месяца назад
amazing thank you for this could you make one for the fields coming from the db or a json file
@LukeRoberts1979
@LukeRoberts1979 3 месяца назад
Amazing tutorial, so clear on instructions not only with storyblok but with nextjs and going into each step with detail. Have subscribed, would love to see more storyblok and nextjs content.
@AustinShelby
@AustinShelby 3 месяца назад
Thank you for the supportive comment Luke. Is there anything in particular that you want to see in the future?
@AustinShelby
@AustinShelby 4 месяца назад
GitHub Repository for this project: github.com/AustinShelby/storyblok-nextjs Sign up to Storyblok for free: get.storyblok.com/austin-shelby
@milanpoudel7212
@milanpoudel7212 5 месяцев назад
can't we use same image for this? i mean the image coming from api....I don;t think we save different versions of image while creating blog post or anything
@AustinShelby
@AustinShelby 5 месяцев назад
Usually most content management systems automatically create different versions of the image when you upload one or they provide an API that you can use to fetch different versions of the image with URL search params. For example example.com/image.png?width=400 would fetch an image and resize the width to 400 pixels on the fly. Imgix is one these services that provide this kind of functionality.
@MMubeenOfficial
@MMubeenOfficial 7 месяцев назад
That's awesome ❤ Nothing is better than "Austin Shelby" to learn coding❤
@LuisLarreaJr
@LuisLarreaJr 7 месяцев назад
Great example. I had something similar when product had the bright idea to still show the fields but disabled. Apparently this really complicates things since now you have to disable the validation rules from triggering on disabled fields.
@monkeyprogramming776
@monkeyprogramming776 7 месяцев назад
Thank you Austin, It helped me a lot
@AustinShelby
@AustinShelby 7 месяцев назад
I'm super happy to hear that. Thanks for the encouraging comment!
@socialultra7219
@socialultra7219 8 месяцев назад
cheers dude, I was struggling on this problem for a while, your content helped immensely
@AustinShelby
@AustinShelby 8 месяцев назад
Glat to have helped you solve your problem!
@dhanbirsunwar6374
@dhanbirsunwar6374 10 месяцев назад
Thank you so much, this made my work much easier. very informative and explained so well
@Tony.Nguyen137
@Tony.Nguyen137 10 месяцев назад
Thank you brother. Allahu Wakbar
@kacperkepinski4990
@kacperkepinski4990 10 месяцев назад
there are millions of files on github
@kacperkepinski4990
@kacperkepinski4990 11 месяцев назад
u change only text and u have 2 different buttons thats .....
@photoinshot1355
@photoinshot1355 11 месяцев назад
Excellent tutorial, very well explained and demonstrated, thanks very helpful and useful.
@doyouwonmi
@doyouwonmi 11 месяцев назад
Thank you so much! I finally understood how to use sizes attribute with confidence!
@AustinShelby
@AustinShelby 11 месяцев назад
Glad to have helped!
@nickwoodward819
@nickwoodward819 11 месяцев назад
Hi Austin, sorry for another question! When I move to the next step it seems to populate the next inputs with the previous values. Have you ever come across that behaviour?
@nickwoodward819
@nickwoodward819 11 месяцев назад
Only half way through but loving the video. Out of interest, do you need to use a ref to register the input? I've been using {...register('name', {required: true})} as an attribute and it seems to be working ok?
@AustinShelby
@AustinShelby 11 месяцев назад
Thank you for watching. When I recorded this video the latest version of react-hook-form was 6. Now it's in version 7 where the syntax has changed a little bit. The way you are using it now is correct 👍.
@nickwoodward819
@nickwoodward819 11 месяцев назад
@@AustinShelby Perfect, and thanks for the quick reply!
@ZZZZZZZaaaart
@ZZZZZZZaaaart Год назад
Well done thank you
@andrscs
@andrscs Год назад
This is great, but what if the form has over 20 fields, I would need to create a copy of it for every version, is there a more 'versatile' way of achieving this? Maybe when setting the definition of a type in the schema, can I co-require a field, instead of creating different possible versions of it? I'm new to zod as you can tell...
@andrscs
@andrscs Год назад
Nevermind, I found a more dynamic way to do it, just creating the z.object with the diff, and merging the base schema, so I don't have to create copies for every version.
@AustinShelby
@AustinShelby Год назад
@@andrscs I'm glad you found the solution for it and thanks for sharing it with everyone 👍
@jlkinley
@jlkinley Месяц назад
@@andrscs Can you give an example of what you did here? I might be able to use that for my issue.
@mrluckyuncle
@mrluckyuncle Год назад
Thanks for the concise and clear explanation and good examples.
@AustinShelby
@AustinShelby Год назад
Thank you a lot! Comments like these keep me making new videos.
@andywilkes1290
@andywilkes1290 Год назад
This has been the clearest and most informative explanation I've found so far. And it also covered how to handle images in a responsive grid layout, and it all now seems to easy and obvious. Thank you, Austin.
@davidlew4391
@davidlew4391 Год назад
If I have three slides, how can I write the logic of the slide? And make sure the second slider will move when the first slider touches it. Thx!
@julio-dev
@julio-dev Год назад
Thanks a lot, as I'm learning by making a little project of my own, this was very useful!
@AustinShelby
@AustinShelby Год назад
Hey Julio that's awesome to hear. I wish you good luck on your project. Let me know if you need any help.
@rjtdas
@rjtdas Год назад
Clean !😀... Thanks
@arturpawelski321
@arturpawelski321 Год назад
thank you for help ,you are great teacher❤
@Supremevillacom-house
@Supremevillacom-house Год назад
thanks man
@EvgenichTalagaev
@EvgenichTalagaev Год назад
I don't understand why <img not loading my images in srcset? <img srcset="<?=SITE_TEMPLATE_PATH?>/img/wildly-relax-767.jpg 767w, /upload/iblock/017/017a40279824ba556009d247f6b7ee76.jpg 1920w" src="<?=SITE_TEMPLATE_PATH?>/img/wildly-relax-767.jpg" alt="Description of the image" /> he is always loading 1920px image
@tonyg_nerd
@tonyg_nerd Год назад
I just watched this and your other React/Zod vid for the first time. You have some great tips, the vids are clear, concise, and well-edited. I need to rewatch for the detail. Please do keep it up.
@shrutisahu6660
@shrutisahu6660 Год назад
Thank you so much, Austin. This was really a gem of information. I am gonna try it on my website.
@AustinShelby
@AustinShelby Год назад
Glad I could be of help! Let me know how it goes.
@shrutisahu6660
@shrutisahu6660 Год назад
Hey Austin, your tutorial worked for me. Thanks a ton! 🎉 Just one small question... what is the difference if I use 'srcset' or style="max-width: 100%; height: auto;" attribute to make the image responsive? Also, which is better to go with?
@AustinShelby
@AustinShelby Год назад
@@shrutisahu6660 Image responsiveness can mean two different things. style="max-width: 100%; height: auto;" makes sure that the image fills up its parent container and that its aspect ratio doesn't get skewed. The srcset and sizes attributes make sure that the browser loads the correctly sized image based on the viewport size so you don't actually load a too large image and waste precious bandwidth. They do two different things and are best used together.
@shrutisahu6660
@shrutisahu6660 Год назад
@@AustinShelby thank you! Now the concept is clear to me 👍🏻 and... Subscribed 🙌🏻
@miketepes8208
@miketepes8208 Год назад
This will work with zod? I tried it with zod but i cannot get to step 2 cause my step 2 fields also validated when clicking next to step 2.
@AustinShelby
@AustinShelby Год назад
The way I showed it in this video won't work with zod. If you want to use zod I would make each step a separate form with their own validation.
@miketepes8208
@miketepes8208 Год назад
Thank you very much Sir. I learned a lot. I applied this to checkout page where checkbox is biling address is same with shipping address or not. Thank you very much
@AustinShelby
@AustinShelby Год назад
Hey Mike it's awesome to hear that this video helped you! Thanks for watching.
@Cruzylife
@Cruzylife Год назад
Your repo is outdated
@AustinShelby
@AustinShelby Год назад
That's true this video is already two years old. I might remake this tutorial with the latest tools and best practices.
@vimux
@vimux Год назад
Saved my life. Thanks for this.
@niravdiev4477
@niravdiev4477 Год назад
Amazing video! Thank you so much!
@mohamedali9249
@mohamedali9249 Год назад
thank a lot for thit tutorial, bro i have a question how will it be if you the sections in differents componet, i mean how will you acces to data in different form and submit them in a single, i'm really curious about knowing this
@techjdx
@techjdx Год назад
It realy good.
@AustinShelby
@AustinShelby Год назад
Thank you for watching!
@theaudacity4432
@theaudacity4432 Год назад
Thanks for this. I wont have to use calibri sans any more
@AustinShelby
@AustinShelby Год назад
Calibri is in a category of its own. Nothing can compare to it.
@Thatonemetalsonicfan
@Thatonemetalsonicfan Год назад
Where comic sans
@AustinShelby
@AustinShelby Год назад
Microsoft licenses 😑
@Thatonemetalsonicfan
@Thatonemetalsonicfan Год назад
no :(
@pedrol6193
@pedrol6193 Год назад
Great video!
@AustinShelby
@AustinShelby Год назад
Thanks for watching Pedro! Hopefully my tutorial helped you out!
@athefirstletteraofthealpha769
Thank you, Austin. Your tutorial is very clear and helpful.
@zlatkoiliev8927
@zlatkoiliev8927 Год назад
Nice tutorial mate. Can you do the same with Next.js and the next router. So each step of the form will be a new route?!?
@AustinShelby
@AustinShelby Год назад
Hey Zlatko thanks for watching the video. That sounds like an interesting topic for a tutorial, I'll consider it
@mr.random8447
@mr.random8447 Год назад
Yeah would love to see how you handle multi-step forms, having zod only validate only fields on a particular step.
@raymondmichael4987
@raymondmichael4987 Год назад
This is germ by itself 😊
@rastaray6401
@rastaray6401 Год назад
How do you access errors on the email field? Accessing formstate.errors.email results in a "property does not exist" TypeScript error
@AustinShelby
@AustinShelby Год назад
TypeScript is correct in this case. If the checkbox is not checked there won't be a property email in the formState.errors object. To fix this, you have to first check if the object has the email key like this: "email" in formState.errors && formState.errors.email
@Foused87
@Foused87 Год назад
Make more videos like this