Hola a todos, y bienvenidos a una charla relámpago sobre la UI impulsada por configuración utilizando ReactJS. En este video, explicaré qué significa la UI impulsada por configuración y cómo podemos hacerlo en ReactJS.
Pero primero, una breve introducción sobre mí. Así que hola, chicos, soy Joban. Y he estado trabajando en Microsoft durante los últimos dos años. Y ustedes pueden contactarme en las siguientes direcciones. Y sin más preámbulos, comencemos.
Entonces, ¿qué es la configuración impulsada, verdad? Lo que significa. La UI impulsada por configuración es una técnica que te permite crear interfaces de usuario basadas en un archivo de configuración, como JSON, o un archivo de TypeScript que define el diseño y el contenido de los componentes de la UI. Esto puede ser útil para crear interfaces de usuario dinámicas y personalizables sin codificación dura.
Por ejemplo, digamos que quieres crear un tablero que muestre diferentes tipos de visualizaciones y resúmenes de datos. En lugar de escribir código GSX para cada componente y organizarlos en un diseño fijo, puedes utilizar un archivo JSON que especifica el tipo, tamaño, posición y fuente de datos para cada componente. Y luego puedes crear un componente personalizado que lea ese archivo JSON y renderice la UI de acuerdo a ello. De esta manera, puedes cambiar fácilmente la UI modificando el archivo JSON sin siquiera tocar el otro código. También puedes reutilizar el mismo componente desde diferentes páginas y para diferentes escenarios proporcionando diferentes archivos JSON.
Siguiendo, ahora entendamos esto un poco más en detalle. Aquí podemos ver una capa de UI base sobre la cual hay una especie de menú de asistente que consta de varios mosaicos número 1, número 2, número 3, etc. Y cada mosaico tiene un montón de componentes A, B, C, etc. La V y la H que puedes ver en el lado izquierdo, representa si la configuración del diseño de cada componente es horizontal o vertical. Volveremos a eso más adelante.
Ahora, para el mosaico 2 podemos tener una UI muy similar al mosaico 1 con un ligero cambio en el diseño del componente. Puedes verlo aquí. De manera similar, el mosaico número 3 también tiene pequeñas diferencias en la UI. La idea aquí es no crear archivos separados para cada mosaico ya que las diferencias de la UI son muy pequeñas, sino tener un solo archivo de configuración para todos los mosaicos y renderizar los mosaicos sobre la marcha leyendo la configuración. Entonces, ¿cómo podemos hacer esto en ReactJS? Hay muchas formas de implementar, para ser honesto, este paradigma de la UI impulsada por configuración. Pero en esta charla, te mostraré uno de los posibles enfoques utilizando react-hook y componentes personalizados. La idea básica es tener dos partes. Una para definir el diseño que utiliza una estructura recursiva para contener elementos apilados vertical y horizontalmente y otra para mapear los nodos hoja al contenido real que necesita ser mostrado. En esta charla, cubriremos la implementación real de la unidad más pequeña de un componente, por ejemplo, un desplegable, puede ser un formulario, puede ser un gráfico.
Comments