los necesitas, ¿verdad? Entonces tienes que escribir algunas cosas. Entonces, con los componentes del servidor, esas APIs React.lazy, desaparecen porque ellos se encargan de esto por ti. Ahora, si ves en este ejemplo, como solo iré a la diapositiva anterior y te lo mostraré. Entonces tenías el antiguo renderizador de fotos y el nuevo renderizador de fotos, estos dos componentes, que eran como componentes del cliente, y los cargabas de forma diferida. Pero ahora, como todo se está renderizando en el servidor, los componentes del servidor en el servidor, pueden realmente separar todos los importaciones del cliente, que no se están utilizando mientras se renderiza tu componente del servidor final, eso puede componer tu cliente y el servidor. Entonces, en realidad, puede hacer esa fragmentación automática de código por ti. Por ejemplo, en este caso, si las banderas de características como el nuevo uso del renderizador de fotos es verdadero, solo se cargará el nuevo componente del renderizador de fotos como parte del
JavaScript aquí y no el otro. Muy bien. Pasando al siguiente paso, si te gusta imaginar este escenario, tienes tus componentes que antes estaban en tu cliente, pero ahora hemos trasladado estos mismos componentes de
React del lado del cliente al servidor. Entonces, como estamos muy cerca del servidor, ahora podemos tener llamadas más rápidas y directas con el servidor y la respuesta que podemos obtener de la base de datos, puede ser mucho más rápida, diría yo, en comparación con las llamadas fetch habituales que hacemos. Entonces, es súper rápido que eso. Muy bien. Hay algunas cosas que tampoco podemos hacer, que es con, aunque puedes usar componentes del cliente y del servidor, ambos en conjunto en el servidor, cosas como estados y efectos, que suelen ser cosas de los componentes del cliente. Los componentes del servidor no admiten eso. Entonces, estas cosas son algo que no puedes usar. Son algo muy bueno. Si quieres imaginar algo, los componentes del servidor se utilizan generalmente para mostrar algunos
data o hacer algunas llamadas fetch o hacer algún tipo de obtención de
data. Cuando hay interactividad involucrada, debes usar componentes del cliente. Entonces, solo quiero decir que hay una regla básica, obtención de
data o mostrar cosas sin interactividad, componentes del servidor; interactividad y mayor riqueza, debes usar eso es cómo debemos separar esos dos. Lo siguiente que debes hacer, si te gusta puedes tener componentes del servidor y también puedes renderizar un componente del servidor dentro de un componente del servidor o puedes renderizar un componente del cliente dentro de él. Pero solo puedes también pasar props desde componentes del servidor a componentes del cliente, pero solo las props que son serializables a través de la red, porque los componentes del servidor no se renderizan en el servidor. Como que van a, lo siento, los componentes del servidor se renderizan en el servidor y los componentes del cliente no. Entonces, tienes que, si quieres compartir
data entre ellos, tienen que pasar por el enlace del servidor. Entonces, solo los datos serializables, como, ya sabes, objetos y cadenas, números, cosas así. Se pueden serializar fácilmente. Pero cosas como, ya sabes, funciones, no puedes, no puedes usarlas como, no puedes pasarlas como una prop. Entonces, esta es una limitación. Entonces, bueno, ahora, sí, ahora veamos cómo usar realmente los componentes del servidor. ¿Qué necesitas hacer para comenzar? En
React, creo que muchos de nosotros ya hemos visto la charla de cómo el equipo de
React lo había estado demostrando. Pero, como ejemplo que
React había mencionado, cómo crear un componente del servidor. Entonces, esta es una indicación de que este componente se renderizará como un componente del servidor en el servidor.