🚀 Optimizing React Performance: How to use Lazy and Suspense

SdĂ­let
VloĆŸit
  • čas pƙidĂĄn 5. 09. 2024
  • This tutorial covers the use of Lazy and Suspense in your React application and how it improves performance.
    You will learn in less than 5 minutes to lazy-load components only if they are required and how to use Suspense to manage the asyncronous load of those components.
    🔗 LINKS
    Live: react-lazy-sus...
    Repo: github.com/man...
    👇 IMPORTANT:
    Learn how to do your web portfolio with HTML and CSS:
    www.udemy.com/...
    Github: github.com/org...
    ---
    #reactsuspense #reactjst #reactlazy

Komentáƙe • 29

  • @rodrigojulianmartin7092
    @rodrigojulianmartin7092 Pƙed měsĂ­cem +1

    Muy buena explicacion, muchas gracias!

  • @nicovelazquezz
    @nicovelazquezz Pƙed 8 měsĂ­ci +2

    Hola Manuel, caĂ­ en este video de casualidad. Para mi el lazy loading es algo nuevo y lo he entendido en 5 minutos gracias a tĂ­. Te has ganado un nuevo subscriptor. Saludos desde ARG

    • @manuelsanchezweb
      @manuelsanchezweb  Pƙed 8 měsĂ­ci +1

      Vamos! BuenĂ­simo! Pues nada, estate atento por aquĂ­ que suelo sacar temas de React/Next que tienen que ver con mejoras de rendimiento! Un saludo desde Hamburgo!

  • @nahuelescalante1248
    @nahuelescalante1248 Pƙed měsĂ­cem +1

    Genio master idolo thanks

  • @nic_jaws
    @nic_jaws Pƙed rokem +2

    Muy bien explicado y al grano. Gracias

  • @NyxAGO
    @NyxAGO Pƙed 7 měsĂ­ci +6

    no encontre tu version de la pokedex, pero me di cuenta que usar Lazy y Suspense no espera a que termine de cargar las imagenes (solo los componentes) :(, me pregunto si habra una forma que termine de cargar el componente con imagenes y recien mostrar la pagina completa

    • @manuelsanchezweb
      @manuelsanchezweb  Pƙed 7 měsĂ­ci +3

      Buenas! Suponía que eso debía funcionar ya así con React 18, le echaré un vistazo a ver! Gracias por tu comentario!

    • @thejoseph2709
      @thejoseph2709 Pƙed 2 měsĂ­ci

      Puedes usar el atributo de loading='lazy' para hacer que cargue la imagen solo cuando estén apunto de entrar en viewport. Te recomiendo que combines eso con lo que muestra el vídeo para mås rendimiento.

  • @megapanza6
    @megapanza6 Pƙed rokem +2

    Buen aporte amigo, muy claro!

  • @jesusre8495
    @jesusre8495 Pƙed 8 měsĂ­ci +1

    Genial! gracias por la ayuda!

  • @manuelsanchezweb
    @manuelsanchezweb  Pƙed rokem +4

    ¿Conocías Lazy y Suspense de React? ¿Lo habías usado antes? ¥Cuéntamelo por aquí!

    • @carmendelcampomunoz4649
      @carmendelcampomunoz4649 Pƙed rokem +2

      Soy yo Tomi por otra cuenta

    • @erickruben5536
      @erickruben5536 Pƙed 11 měsĂ­ci +1

      La verdad que no, intentaba hacer otras cosas para hacer una pantalla de carga pero tu lo has hecho muy sencillo muchas gracias

  • @079Francvs
    @079Francvs Pƙed 2 měsĂ­ci +1

    Buen video, el Ășnico defecto es que me quedĂ© esperando aquello que dijiste, de que hay manera de hacer que solo cargue el componente que se estĂĄ usando, aun hayas cliqueado el resto.

  • @MsSoldadoRaso
    @MsSoldadoRaso Pƙed 9 měsĂ­ci +1

    Excelente

  • @MichellQHernandez
    @MichellQHernandez Pƙed 7 měsĂ­ci +1

    Funciona todo perfecto , pero si llamara mi componente supongamos comentarios, desde otro componente, y ahí ya no me carga el componente, tendría que poner suspense en ese componente también o como podría solucionar ese tema? Muchas gracias por tu ayuda

    • @manuelsanchezweb
      @manuelsanchezweb  Pƙed 7 měsĂ­ci +1

      Buenas! He tardado un poco en contestar porque estaba pensando bien quĂ© decir. Mi respuesta a priori es que depende. Imagino que tienes algo como ChildComponent (el que ya tiene Suspense) y el ParentComponent. Si es el Ășnico Child, deberĂ­a ser suficiente con ponerlo en el Child. Esto serĂ­a Isolated Suspense. Si tienes varios children y todos o muchos tienen alguna movida asĂ­ncrona, sĂ­ te merece la pena hacer un Suspense en el ParentComponent. Y lo que tĂș sugieres, que es NestedSuspense, hacer Suspense en los dos, tambiĂ©n es posible con React, y te permite un control mucho mĂĄs detallado de cada uno de los estados. Total, que depende un poco del caso que tengas. Espero que haya sido mĂĄs o menos de ayuda!

  • @LorenzoJimenez
    @LorenzoJimenez Pƙed 9 měsĂ­ci +1

    Super sencillo, recuerden que solo para React 18 y mayores

    • @manuelsanchezweb
      @manuelsanchezweb  Pƙed 9 měsĂ­ci

      Exacto, PEGI 18, pronto se vienen algunas buenas pråcticas con React que se añadieron con React 18!

  • @francovedia5584
    @francovedia5584 Pƙed 10 měsĂ­ci +1

    funciona, gracias

  • @ricardorien
    @ricardorien Pƙed 8 měsĂ­ci +2

    Amigo haga zoom in a ese codigo.

  • @TheFranco887
    @TheFranco887 Pƙed 8 měsĂ­ci +1

    Buenisimo! En caso de no usar outlet donde deberia ir el suspense?

    • @manuelsanchezweb
      @manuelsanchezweb  Pƙed 8 měsĂ­ci +1

      El suspense lo puedes poner de wrapper de cualquier elemento al que quieras esperar. Cuando digo esperar, me refiero a que se cargue todo lo que haya dentro de ese elemento, fetching de datos incluido por ejemplo. Tienes mucha info al respecto aquĂ­: react.dev/reference/react/Suspense. ÂĄEs una superbuena prĂĄctica que con React 18 se ha vuelto muy fĂĄcil y recomendable de utilizar!

  • @user-rd4oo1jg5g
    @user-rd4oo1jg5g Pƙed 9 měsĂ­ci

    Hola que tal? Muy buen video, consulta por lo que investigue se dice que las api rest son stateless esto es a nivel servidor o cliente? En el caso por ej de react que tb se habla de componentes con y sin estado es a nivel cliente o servidor? No me queda del todo claro. Graciass

    • @manuelsanchezweb
      @manuelsanchezweb  Pƙed 8 měsĂ­ci

      Muy buenas, no entiendo muy bien la pregunta, de primeras te responderĂ­a cliente, pero no entiendo bien la pregunta. Tienes un link?