Muy bien, eso es todo por mi charla, gracias, componentes del servidor desde cero. Gracias. Sí. Sí.
Bueno, espera. Espera, de hecho. Así que hay un par de cosas que los componentes del servidor pueden hacer que no son solo renderizar a HTML. En primer lugar, por supuesto, los componentes del cliente. Puedes renderizar HTML, pero quieres tener cierta interactividad con él. Y también, lo que creo que es la salsa secreta de los componentes del servidor, que es el streaming.
Así que permíteme mostrarte un ejemplo simple de eso aquí mismo. Digamos que tenemos un componente de álbumes que obtiene algunos álbumes de una database, literalmente solo llamando dentro de un componente y diciendo, oh espera, y luego renderizándolo a una lista de canciones y títulos. Y si quisieras renderizar eso, sabes, el stream y esperar a que se resuelva, puedes incluso hacer react suspense, tal vez poner un fallback, decir álbumes, y esto renderizaría el H1 de inmediato y mostraría la carga hasta que se complete la llamada a la database. Un sistema realmente genial que puedes hacer con los componentes del servidor, pero que no puedes hacer con un HTML plano. Necesitamos streaming.
Así que para eso voy a recurrir a una biblioteca central en React. React server Dom. Esto es algo que proporciona el equipo de React. Tiene versiones específicas para cada bundler. Webpack está lo suficientemente cerca de lo que estamos haciendo, lo creas o no, así que vamos a tomar de allí. Y vamos a crear un stream llamando a stream react server dom.render to readable stream. Y para devolver eso desde nuestro servidor, puedes hacer una respuesta estándar de la web, porque si no lo sabes, el streaming es parte de la plataforma. Si devuelves un stream, entonces el receptor sabe qué hacer con él. Así que ahora vamos a reiniciar nuestro servidor. Y esta vez, en realidad voy a hacer curl para ver qué salida obtenemos. Así que si hago curl a nuestro endpoint, deberíamos ver algo de código bajando por el cable. Primero, vimos que el h1 entraba, hola React Summit. Luego nuestro spinner de carga con una pequeña referencia L2 aquí. Ese número dos está haciendo referencia a lo que viene más tarde por el cable, que va a ser todos nuestros álbumes. Así que sabe cómo intercambiar en caliente la carga con la lista de álbumes.
Comments