Video není dostupné.
Omlouváme se.

Most Beginner React Developers Do This Wrong

Sdílet
Vložit
  • čas přidán 27. 07. 2024
  • FREE React Hooks Simplified Course: courses.webdevsimplified.com/...
    Filtering is one of the most common things you will do as a developer, but it is something most developers do wrong in React. In this video I want to showcase some of these incorrect approaches as well as show you the correct way to create a search filter in React.
    📚 Materials/References:
    FREE React Hooks Simplified Course: courses.webdevsimplified.com/...
    GitHub Code: github.com/WebDevSimplified/r...
    🌎 Find Me Here:
    My Blog: blog.webdevsimplified.com
    My Courses: courses.webdevsimplified.com
    Patreon: / webdevsimplified
    Twitter: / devsimplified
    Discord: / discord
    GitHub: github.com/WebDevSimplified
    CodePen: codepen.io/WebDevSimplified
    ⏱️ Timestamps:
    00:00 - Introduction
    00:30 - Setup
    01:55 - Basic State Setup
    05:35 - Naïve Filtering Approach #1
    07:35 - Naïve Filtering Approach #2
    09:41 - Correct Filtering Approach
    #React #WDS #ReactSearchFilter

Komentáře • 278

  • @KCrossReal
    @KCrossReal Před rokem +286

    One small thing I'd add to the top of the useMemo -> if (!query) return items
    So you don't iterate over the whole list of items if there is no query
    Important for large lists, and also use debouncing in large lists

    • @wasd3108
      @wasd3108 Před rokem

      top 10 mistakes a clickbaiter makes when viewer fkin his mom [DO NOT MAKE THIS MISTAKE YOURSELF!]

    • @p33yush
      @p33yush Před rokem +9

      true! small but awesome observation

    • @parlor3115
      @parlor3115 Před rokem +15

      But then again, you don't want to have large lists as you'll use server side pagination

    • @lauralegerofficial
      @lauralegerofficial Před rokem +14

      ​@@parlor3115 It depends, really. Sometimes I will use large lists that are generated on the client side.

    • @theBarracuda_
      @theBarracuda_ Před rokem +2

      isn't that redundant with useMemo and depende. array?

  • @merotuts9819
    @merotuts9819 Před rokem +167

    Just wasted my whole day yesterday developing a complex people search box at my job. Had to learn all this the hard way 😅 If only you'd posted this a bit sooner 😆

    • @ayoubdouch6975
      @ayoubdouch6975 Před rokem +31

      Now, your mind and body will never forget how to make a search box for the rest of your time

    • @yuchuga8341
      @yuchuga8341 Před rokem +2

      You can just use react-select library for search input select field. Amazing library

    • @seventeeen29
      @seventeeen29 Před rokem +16

      You only wasted a day. Those are rookie numbers in this bracket

    • @Suz4n650
      @Suz4n650 Před rokem

      Yeah ! Kyle is a real a hole ! Kidding ofc ! Amazing content !

    • @lickey8919
      @lickey8919 Před 5 měsíci

      ...? What lamo

  • @techwithtaku
    @techwithtaku Před rokem +7

    Ever since I started watching this channel, my react skills are improving. thanks man

  • @PROJECTJMUSIC
    @PROJECTJMUSIC Před rokem +20

    Very helpful! I was actually doing mistake #2 in a recent project, but now I know that I'll have to change that :D

    • @DiestroCorleone
      @DiestroCorleone Před rokem +1

      Me too. I was proud of myself, thinking 'I completely dominate forms in React'.
      But Kyle proved me wrong, and I'm thankful for that. Plus, I learned how to use useRef and useMemo (might have to read more about it to fully understand it), but overall, this was a very useful video.

  • @mohammadrafi895
    @mohammadrafi895 Před rokem +3

    Thanks for explaining that. I saw the correct way a couple of times but didn't really understand why we need to do it that way.

  • @Valyssi
    @Valyssi Před rokem +8

    Key takeaway (which is also stressed in the react docs): don't duplicate state. It is extremely rare for state needing to be duplicated (ie. the same data appearing in different states, or multiple times within the same state). The memoization is a nice addition and good to be aware of, but the docs recommend against preemptive optimizations. If you do optimise, you should keep in mind the memory footprint of that memo and most importantly whether the memo tends to be used (versus a component whose primary state changes involve changing one of the dependencies of the memo)

  • @developer_hadi
    @developer_hadi Před rokem +3

    THIS VIDEO CAME IN THE RIGHT TIME, THANK YOU SO MUCH YOU'RE THE SIMPLEST ON CZcams

  • @nabeelahmed7754
    @nabeelahmed7754 Před rokem +2

    Super useful.... I was just working on the filters last day.... And i used the first approach.... And now you taught me the correct method.... Thanks buddy ♥️

  • @rhnkashyap
    @rhnkashyap Před rokem +1

    After watching WDS tutorials I am able to write React code. Thanks man!!! Very much appreciated.

  • @und0
    @und0 Před rokem +8

    This is a sort of hack but for this specific situation the best way is actually to hide the items using css attribute selectors :P
    then hide them with [data-search*=""] { display: none }
    Obviously this is an over simplification but works for very large lists

    • @nguyenduy-sb4ue
      @nguyenduy-sb4ue Před rokem

      What ? That is super mess up

    • @und0
      @und0 Před rokem +2

      @@nguyenduy-sb4ue Why would it be messed up? It accomplishes the task without super expensive rerenders or DOM manipulation at all. If you have a list of 10,000 nodes removing those from the DOM tree is extremely expensive especially since it blocks the entire thread. Utilizing the browser's much faster css engine would be tens of times faster

    • @und0
      @und0 Před rokem +1

      @@agenticmark no shit sherlock, that's the point. Everyone knows React sucks at rendering large arrays that's why we sometimes have to use "hacks". Or tricks to get around its limitations

  • @yuritavares1916
    @yuritavares1916 Před rokem

    Your communication skills are impeccable. Great video!!

  • @thilankawijesooriya559

    I'd been using the useState hook to update the "filteredItems" array also..The way I used to do this was updating the state of "filteredItems" array within a useEffect(updates the filteredItems array when the query changes)..But with this method you manipulate the data inside the filteredItems array nicer than my method and It saves a rerender..Thank you for the demonstration ♥

  • @st1llsane456
    @st1llsane456 Před rokem

    Thank you, I'm doing my first mini-project and it helped me a lot

  • @visionl.3754
    @visionl.3754 Před rokem

    I am really grateful for all the content, thanks Kyle!

  • @venzkie89
    @venzkie89 Před rokem +3

    I've learned a lot from this guy since I subscribed from this channel. I always looked back from his video list whenever I got stuck from coding. Thank you man.

  • @aashish_stanl
    @aashish_stanl Před 5 měsíci +1

    Thanks brother. I am learning react now. Hoping to see me coding like you soon in few years.

  • @dem0niker136
    @dem0niker136 Před rokem

    Wow! This was so helpful. Will be using this method from now on. Thanks!

  • @RodrigoAlvesdeMacedo
    @RodrigoAlvesdeMacedo Před 5 měsíci

    Amazing! I'm learning sooo much with your videos! Thank you!

  • @kellecierion
    @kellecierion Před rokem

    A very good video. I love your content, they are simple and easy to understand. I love those contents were it's explained why it is not correct or vice-versa. Best regards

  • @thomas-gk9jp
    @thomas-gk9jp Před rokem +12

    Thank you, explanations are really good !
    Maybe you could explain a bit more the custom hooks / useEffect concept, which is not the easiest to understand ?!

  • @wpxpert98
    @wpxpert98 Před rokem +1

    thank you kyler for this video, it's really helpful

  • @anatolydyatlov963
    @anatolydyatlov963 Před rokem +48

    I don't know why, but almost every time I watch your "most people do it wrong" videos, I realise that I've been doing the given thing correctly despite the fact that I've learned React on my own through experimentation. Nevertheless, I love watching them just to confirm that there's no better approach. Great work, man, keep it up!

  • @DiestroCorleone
    @DiestroCorleone Před rokem

    I thought I was good at handling forms until I saw this video.
    Awsome tips, as usual. Thanks a lot!

  • @aayushgupta8686
    @aayushgupta8686 Před rokem +1

    Such a simple use case, but still so many wrong techniques to implement a search bar. Thanks for making such videos

  • @ahmedelbougha
    @ahmedelbougha Před rokem

    Thank you, Kyle. Great video as usual!

  • @arielspalter7425
    @arielspalter7425 Před rokem +1

    Fantastic tutorials. Thanks!

  • @hilaadin2184
    @hilaadin2184 Před rokem

    Just what I needed! Thanks!

  • @peter9759
    @peter9759 Před 8 měsíci

    As always great videos I directly jumped to correct filtering method

  • @andretura01
    @andretura01 Před rokem +2

    Thanks for the video!

  • @Devanshukoli
    @Devanshukoli Před rokem

    Hey! Thanks, Kyle I was confused in my react project about adding filtration and this video solved it perfectly... Thanks really .... You mentioned that you have a free react course right? Now I'm gonna check that as well... I learned a lot...Thanks.

    • @whatsapp176
      @whatsapp176 Před rokem

      Helpline 📲📩⬆️
      Questions can come in⬆️

  • @curiousLeafy
    @curiousLeafy Před rokem

    The third way was what i was doing from the beginning of my react learning. I thought this is how people do it because it made sense if a state changes a component rerenders so storing the input value in state makes your component rerender thus storing the filtered value in a regular variables works just fine.

  • @jrm_0749
    @jrm_0749 Před rokem +6

    Nice video mpan, but to me, it's still not the most efficient way to do it because you're still storing the filtered array. Instead, you can just filter the items array directly in the render() right after the map function. Tell me if I'm missing something.

  • @TonyStark90743
    @TonyStark90743 Před rokem +2

    Please make videos on node js and express more. We need updated and advanced topics covered in those videos. Thanks 🙏👍🏻

  • @changbogo23
    @changbogo23 Před rokem +1

    Thank you a lot . Good stuff

  • @kwtr
    @kwtr Před rokem +5

    I just finished going through the entire React documentation and this is the best video for me to get started on a new project with React! Thanks Kyle

    • @parlor3115
      @parlor3115 Před rokem +1

      Now you'll get to build your dream project sooner

    • @siriusFish1
      @siriusFish1 Před rokem

      @@parlor3115 lol

  • @m12652
    @m12652 Před rokem

    Great stuff… maybe do a comparison between how you do this in React and how you’d do it in Svelte. In svelte, in the markup, you could simply add a condition to a loop that already exists.

    • @whatsapp176
      @whatsapp176 Před rokem

      Helpline 📲📩⬆️
      Questions can come in⬆️

  • @rolfchristensen9026
    @rolfchristensen9026 Před rokem

    Thanks a lot for keeping me from falling into all the pits and stepping on mines :)

    • @whatsapp176
      @whatsapp176 Před rokem

      Helpline 📲📩⬆️
      Questions can come in⬆️

  • @lickey8919
    @lickey8919 Před 5 měsíci

    Like every other turorial out there, this is nice for small projects for learning react or small scale personal websites. Id like to see a server sided pagination with filters tutorial. I think that would be very useful

  • @brandonlange2260
    @brandonlange2260 Před rokem +1

    Hey Kyle great video as always, you could possibly show how to do this with async data too.

    • @whatsapp176
      @whatsapp176 Před rokem

      Helpline 📲📩⬆️
      Questions can come in⬆️

  • @martintopolanek448
    @martintopolanek448 Před rokem +3

    Quick tip: You don't need to write return if you wrap function body in parentheses.
    So instead doing this:
    filteredItems = items.filter(item => { return item.toLowerCase()... })
    You can do this:
    filteredItems = items.filter(item => (item.toLowerCase()... ))

    • @ridiculousgames365
      @ridiculousgames365 Před rokem +2

      You don't even need the parenthesis here because you're returning a single value. This is called implicit return. You would only need parentheses if you were returning an object, for example, items.filter( item => ({ foo: bar }) ).

    • @martintopolanek448
      @martintopolanek448 Před rokem

      @@ridiculousgames365 Yeah, you are right.

  • @bass1387
    @bass1387 Před měsícem

    Stuff for beginners)) Perfect result in the end!

  • @hafizhzulian_
    @hafizhzulian_ Před rokem

    Nice explanation please make a video about edit data in select component

  • @sayantandas7544
    @sayantandas7544 Před rokem

    Such a good tutorial!

  • @abdurrahmanm.el-sayed5561
    @abdurrahmanm.el-sayed5561 Před 11 měsíci

    thank you bro, you're awesome!!!!

  • @The14Some1
    @The14Some1 Před 11 měsíci

    4:30 you can extract input value without using ref either by accessing form elements like this: console.log(e.target.elements.inputElementName), or by extracting formData like this: const data = FormData(event.target); console.log(data.get("inputElementName"));
    Both require you to assign the name to your input element, though.

  • @lescobrandon2202
    @lescobrandon2202 Před rokem +1

    Good stuff!

  • @Ram-sc6or
    @Ram-sc6or Před rokem

    Helpful, thanks

  • @osamahussam4351
    @osamahussam4351 Před rokem

    thanks a lot !
    We need another video for node js developers

    • @whatsapp176
      @whatsapp176 Před rokem

      Helpline 📲📩⬆️
      Questions can come in⬆️

  • @alimousavi2763
    @alimousavi2763 Před 9 měsíci

    Best tutorial for search bar thanks❤

  • @lucienchu9649
    @lucienchu9649 Před rokem

    Pretty informative, thx

  • @user-cy9qi8kj2g
    @user-cy9qi8kj2g Před rokem

    One of the fastest lectures I've ever seen

  • @noelanthonyrdiaz143
    @noelanthonyrdiaz143 Před rokem

    more tutorial pls 😊 well explained ♥️

  • @alibinnaseer
    @alibinnaseer Před rokem

    Do more if these please!

  • @taylora.buckner5970
    @taylora.buckner5970 Před rokem

    I love the amount of effort you put into your videos; thanks for doing so much for the community.
    My only critique is I've noticed a trend of relatively lengthy videos (>10 min), that probably could be shortened. Take that for what you will, I still love your content. I have a feeling that shorter content will become more popular :)

  • @instantrecaps1764
    @instantrecaps1764 Před rokem

    Hello, i am a huge fan of yours. Been watching your informative videos for over a year now. And man i have got to tell you that you are awesome. I have a question for you if you can answer : i have got a job recently, it's my very first job. how can i leverage the opportunity so that i can grow? I am learning React now and will work on the frontend

  • @marvelBoy1909
    @marvelBoy1909 Před rokem

    applauds for ur work 👏

  • @michaelirwin7258
    @michaelirwin7258 Před rokem

    I've been learning react for about a year now. I've just now gotten my first large scale app 99.9% done. I sure wish I had known about useRef 6 months ago :(

  • @grantdoyle1259
    @grantdoyle1259 Před rokem +2

    Hey Kyle could you do a video on the new react update that has changes to async await with promises?

  • @nwaguchima2280
    @nwaguchima2280 Před rokem +1

    Thank you so much, Kyle, your contents are always excellent, I have learnt so much and am grateful. I am curious though, instead of using a useMemo, why not just have a use effect that filters the items, with items and queries in the dependency array, I think the question is, which is better? because useMemo sure comes with a cost.

    • @fabienbroquard7690
      @fabienbroquard7690 Před rokem +1

      useMemo is like a useState with dependencies automaticly triggering it. If you useEffect, you'd need to create a new useState to save the filtered items (if you modify a const of an array set in code it won't work because useEffect runs after the render, it wouldn't render the updated const array)..
      thus with useEffect/useState, 2 re-renders: one setQuery/setItems changes -> triggers -> useEffect -> triggers -> setFilteredList (which by setting a new state triggers a re-render a second time to display the updated filteredList state). Using useMemo will do the same in only one re-render, because it sets the 'returned state of useMemo' before rendering, not after. useEffect runs after the component has re-rendered.

  • @PatrikTheDev
    @PatrikTheDev Před rokem +18

    Have you considered switching to Vite in your future tutorials? CRA is no longer the best way to make very lightweight SPAs. You can look up videos on why that’s the case for most uses

    • @jamesyanlan2413
      @jamesyanlan2413 Před rokem +3

      I'm a few weeks into react, and I keep seeing youtubers also saying not to use CRA lol. Might have to look into Vite as well. Thanks for the heads up!

    • @Valyssi
      @Valyssi Před rokem

      It never was the best way to make lightweight SPA's, it was intended as a learning tool and for that it still serves its purpose (though you'd be right to point out that vite is largely just as beginner-friendly as CRA and can easily serve the same purpose, in addition to being production-friendly). That said, it would be nice for him to at least address vite and the problems with using CRA on any project that isn't just for learning.

    • @ontheruntonowhere
      @ontheruntonowhere Před rokem

      His ears must have been burning bc he just released a video about using Vite instead of CRA.

    • @PatrikTheDev
      @PatrikTheDev Před rokem

      @@ontheruntonowhere that doesn’t mean his ears are burning or smth, he just realized he was wrong and that’s good

    • @ontheruntonowhere
      @ontheruntonowhere Před rokem

      ​@@PatrikTheDev It's a figure of speech dude. Doesn't mean he was wrong.

  • @NikeshKumar-lt5pz
    @NikeshKumar-lt5pz Před rokem +1

    Thanks a lot

  • @licokr
    @licokr Před rokem

    When you used two states filteredItems and items, there was a small mistake that if you added an item, the time would be added anyways regardless of filtering because you didn't filter an item before adding the item into filteredItems... it wasn't the point of this video tho... I just saw it so.. Thank you! I've been really enjoying watching your videos, they've helped a lot!

    • @whatsapp176
      @whatsapp176 Před rokem

      Helpline 📲📩⬆️
      Questions can come in⬆️

  • @sambhavjain1104
    @sambhavjain1104 Před rokem +1

    Hey kyle, can we not directly nest the filter function just before mapping the list, is it a bad approach?
    I’m doing this since 1 year in my company’s project 😅

  • @mikhailvasilev5798
    @mikhailvasilev5798 Před rokem +1

    Nice, but you don’t need a ref. You can take input value from the event in the handle submit.

  • @unpluggedaman
    @unpluggedaman Před rokem +1

    Super useful

  • @albirtarsha5370
    @albirtarsha5370 Před rokem

    Super content!

  • @tomasburian6550
    @tomasburian6550 Před 3 měsíci

    The big problem here is that you're constantly iterating through an array for each change you make. In the real world, you're getting data from a backend upon request, so it's much more effective to just type your query and then make the request for the data so you only receive what you asked for instead of working with large chunks on FE.

  • @jwh-e2p
    @jwh-e2p Před 11 měsíci +2

    Hi, great video. But do you agree that react is only suitable for (very) senior devs, since there are soooo many code ‘design’ mistakes to make? As a project manager with dev skills, I just don’t dare to start a react project due to this complexity for an enterprise client.

  • @kDev7659
    @kDev7659 Před rokem

    Hi Kyle, do you mentor those who purchase your courses if they have problems or questions? Like a discord group or something? Love the way you take your lessons but I would really love to have some mentoring as well while I learn React. Thanks

  • @bahibrahim101
    @bahibrahim101 Před rokem

    Buddy u r the best!

  • @jetmartin9501
    @jetmartin9501 Před rokem +1

    Great video as usual. Is there any reason you are using an uncontrolled form? Facebook recommends use of controlled forms instead of uncontrolled forms. Just curious?

    • @whatsapp176
      @whatsapp176 Před rokem

      Helpline 📲📩⬆️
      Questions can come in⬆️

  • @yvysunu
    @yvysunu Před rokem +1

    This is the first time I have seen this kind of video and realize I do it the right way 😅

    • @robertolanzone
      @robertolanzone Před rokem +1

      Same lol this was a pleasing confidence boost for once 😂

  • @luzaw4957
    @luzaw4957 Před rokem

    One mistake I've learned is that I continuously fire API or filters items on input change, so, it's better to add debounce function, wait until the typing is finished and fire API or filter.

  • @kakun7238
    @kakun7238 Před rokem

    Really informative video also I have a question is it good to just a const like filteredItems because I have also seen people saying let react handle the state so would it be fine to keep the filteredItems inside a useState
    Sorry my English is not that good

  • @tubewell5222
    @tubewell5222 Před rokem

    Great Thankyou

  • @user-lz4zo3gc8d
    @user-lz4zo3gc8d Před rokem

    базар жок Кайли!Ырзамын гой

  • @khoinguyen-ft2ys
    @khoinguyen-ft2ys Před rokem +2

    One thing to notice is that, the cost of recalculate filteredItems is not that much, but the cost of re-render filteredItems into the tree is much more bigger

    • @RandomGuy-jv4vd
      @RandomGuy-jv4vd Před rokem

      @@khoinguyen-ft2ys Ahh...the blog post which you cited also addressed the same thing as my link above:
      "Unnecessary re-renders by themselves are not a problem: React is very fast and usually able to deal with them without users noticing anything"
      Therefore, most of the time, it's more likely the issue of slow render rather than Unnecessary re-render.
      Anw, tysm for such an in-depth article, I'm very glad that I learnt something new after all :D

    • @khoinguyen-ft2ys
      @khoinguyen-ft2ys Před rokem +1

      @@RandomGuy-jv4vd You're welcome

  • @shadowmarkds7958
    @shadowmarkds7958 Před rokem

    Cool as always

  • @malag6358
    @malag6358 Před měsícem

    its very helpful

  • @hardwired89
    @hardwired89 Před rokem +1

    Thankyou

  • @lilililliilil
    @lilililliilil Před rokem

    GREAT GREAT VIDEO!❤

  • @mayankjain-901
    @mayankjain-901 Před měsícem

    How is the approach for adding a bool variable like visible to display filtered content or not .

  • @adtc
    @adtc Před rokem

    Instead of typing `return` you could just remove the curly braces, since arrow function without curly brace will just return the value automatically. (Of course, when you define an object with curly braces to return automatically, you need to wrap it with parentheses.)

  • @amannan-123
    @amannan-123 Před rokem

    Thanks for this helpful video but I have a habit to burden the server so I pass search params in API request and get searching done on server-side. :)

    • @whatsapp176
      @whatsapp176 Před rokem

      Helpline 📲📩⬆️
      Questions can come in⬆️

  • @keremardicli4013
    @keremardicli4013 Před rokem +2

    I hardly can think of use cases for such iten lists. If you do not store them in a database, what good will they do to you?

    • @whatsapp176
      @whatsapp176 Před rokem

      Helpline 📲📩⬆️
      Questions can come in⬆️

  • @willyhorizont8672
    @willyhorizont8672 Před rokem +2

    Correct me if I am wrong. That "items" inside useMemo deps is an array so its render everytime no?

    • @robertcarsten3127
      @robertcarsten3127 Před rokem +1

      Because state isn't recreated on each render putting items in a dep array is perfectly fine ( and really the most elegant solution)

  • @codenamegrant
    @codenamegrant Před rokem +3

    What are your thoughts on using Vite instead of CRA, I find it so much faster to install and run

    • @whatsapp176
      @whatsapp176 Před rokem

      Helpline 📲📩⬆️
      Questions can come in⬆️

  • @bagery
    @bagery Před rokem

    What's the status on your React course update?

  • @CottidaeSEA
    @CottidaeSEA Před rokem

    The inputRef is also unnecessary. If you name the form inputs you'll be able to access them straight through the event.target, which will be our form in the SubmitEvent.
    For example, if the input is named searchInput, we can access the DOM element by using event.target.searchInput.

  • @wazzadev7209
    @wazzadev7209 Před rokem

    Very nice

  • @303pix
    @303pix Před rokem

    Great! but about guitar shredding solo lessons?

    • @whatsapp176
      @whatsapp176 Před rokem

      Helpline 📲📩⬆️
      Questions can come in⬆️

  • @pranshushrivastava20
    @pranshushrivastava20 Před rokem

    Can you do one on how to implement remote pagination with react

  • @maheshcharyindrakanti8544

    ty bruu

  • @singmantkpss
    @singmantkpss Před rokem

    like the one react beta doc example

  • @jasmeetsingh3557
    @jasmeetsingh3557 Před rokem +4

    Hey Kyle, Have you ever considered trying a different language/framework? I would love to see some diversity on Django, Ruby, Go or even some other javascript framework like Next. Just curious to know why you haven't tried these.. I think you can make great content and more often getting the learning on a different technology from the same yt channel will only increase your visibility and reach to other people

    • @vapeurdepisse
      @vapeurdepisse Před rokem

      Next is going to be the same as React. I guess he's targeting the most used tech (React) because he's only one. Also he is JS oriented. The other stacks you're mentioning are not widely used. He might as well do Blazor tutorials before any other non-JS tutos.

  • @rishiraj2548
    @rishiraj2548 Před rokem

    Thanks

  • @yetissezgin6931
    @yetissezgin6931 Před rokem

    I handle this problem by storing the state of the items in an object in the list. When something is typed, i change the state of the object of the item, it is shown or not.

  • @VEKTOR299
    @VEKTOR299 Před rokem

    great video

  • @DannyCallaghan
    @DannyCallaghan Před rokem

    Kyle - the NextJS community needs Web Dev Simplified videos. If there was a Kyle type Bat-signal, it would be shining in the sky, right now. Will you answer?

    • @whatsapp176
      @whatsapp176 Před rokem

      Helpline 📲📩⬆️
      Questions can come in⬆️

  • @vavinashece5158
    @vavinashece5158 Před 3 měsíci

    Can't understand if query is " " then why in filter items we are getting all data of item.filter it should return [] ?