Mi nombre es Aurora. Soy desarrolladora web de Noruega, y trabajo como consultora en Oslo, y estoy construyendo activamente con componentes de React en mi proyecto, y ahí es donde trato de obtener mi conocimiento y hacer algunos ejemplos para ayudar a enseñar a otras personas sobre eso.
¿Cuántas personas usan componentes de servidor de React aquí? Bien, bastantes. Wow, eso es bueno, eso es bueno. Genial.
Estoy emocionada de estar demostrando un ejemplo práctico de trabajo con formularios y componentes de servidor aquí hoy, y voy a codificar algo que está basado o inspirado en una característica que construí en mi proyecto actual. Así que vamos directo a ello.
Así que la configuración aquí es un curso de enrutador de XGS, y está usando Prisma como un ORM y una base de datos local y Tailwind para CSS. Soy una gran fan de Tailwind. Y vamos a revisar los archivos iniciales aquí.
Así que como estamos en el enrutador de la aplicación, todo es un componente de servidor por defecto, ¿verdad? Y eso significa que todos estos componentes aquí son, wow, okay, son componentes de servidor por defecto. Y eso significa que realmente puedo hacerlos asíncronos. Así que los componentes de servidor pueden ser asíncronos, y realmente puedo obtener datos de forma asíncrona justo dentro del propio componente.
Y aquí tengo un cuadro de mensajes, y está obteniendo mensajes de la base de datos directamente a través de Prisma. Y luego también hay un componente de visualización de mensajes aquí, o estoy mapeando los mensajes a componentes de visualización de mensajes. Y aquí, todo lo que necesitamos hacer es simplemente estilizar basado en si el mensaje está escrito por el usuario. Así que solo un componente de servidor, nada especial aquí.
Y también hay una entrada de mensaje, y ese es este formulario aquí, y no hace nada ahora mismo. Es solo un formulario con una sola entrada, y lo probaré aquí. Así que no va a pasar nada.
Así que todo esto es componente de servidor, lo que significa que no hay JS añadido al paquete del cliente para ninguno de estos componentes. Y vamos a mejorar esto con React 19. El objetivo será hacer esto interactivo, mientras minimizamos el JS en el cliente y reducimos la complejidad del front-end. Y comencemos simplemente haciendo que el formulario funcione. Así que voy a usar la extensión de React 19 del elemento de formulario para vincular la propiedad de acción a una función. Esto es algo que podemos hacer con React 19 ahora.
Y React 19 fue lanzado como la semana pasada, hace dos semanas, finalmente, después de estar en RC por como medio año. Así que, whoo. Sí, eso es agradable. Sí.
Comments