CSS in JS es el concepto que describe a distintas estrategias que buscan solucionar algunos problemas de integración de CSS con aplicaciones de JavaScript, usando una combinación de JavaScript y CSS, para redactar los estilos, en archivos de JavaScript.
En aplicaciones de React, las estrategias de CSS in JS son principalmente útiles, especialmente porque CSS no fue diseñado con una arquitectura de componentes en mente, como la que usan las aplicaciones de React.
Recordemos que la parte central de las aplicaciones de React son los componentes. Los componentes encapsulan toda la funcionalidad en elementos con los que podemos ir construyendo la aplicación, como si fueran piezas de lego.
El problema de CSS con los componentes es que, CSS es de scope global. Por lo que una misma clase podría repetirse entre dos componentes y cada uno alterar el estilo del otro. CSS no nos permite encapsular los estilos de una funcionalidad en un componente, sin asegurarnos que estos estilos puedan colisionar con otros elementos.
Para solucionar eso, las estrategias de CSS in JS suelen ofrecer formas de modularizar CSS, estrategias para evitar el scope global, entre otros. Todo esto a través de JavaScript.
Las desventajas del enfoque de CSS in JS, son varias, por un lado, delegamos funcionalidad que CSS nos da por defecto, a JavaScript para que nosotros o una librería lo programemos, este intercambio puede producir bugs en nuestros diseños. Por otro lado, las estrategias de CSS in JS suelen eliminar los beneficios de la cascada de CSS, no entraré en mucho detalle al respecto porque requeriría un nivel de comprensión intermedio de lo que es la cascada en CSS.
Por ahora es importante recordar que estas estrategias viene con ciertos defectos, y que deben usarse en escenarios donde los beneficios de integrar CSS en JavaScript, han sido detectados y están bien definidos.
Continuemos.
-
check_circle_outlineMódulo 1 | 6 clases
Introducción
expand_more -
check_circle_outlineMódulo 2 | 8 clases
Routing en el cliente
expand_more -
check_circle_outlineMódulo 3 | 13 clases
Autenticación de usuarios
expand_more -
check_circle_outlineMódulo 4 | 10 clases
Consumir servicios web
expand_more -
check_circle_outlineMódulo 5 | 19 clases
Styled components
expand_more-
done_all
Clase 1
CSS in JS [React Single Page Apps]
-
done_all
Clase 2
Fundamentos y configuración de styled components
-
done_all
Clase 3
Trabajando con props
-
done_all
Clase 4
Extendiendo estilos de otros componentes
-
done_all
Clase 5
Props y atributos
-
done_all
Clase 6
Nesting
-
done_all
Clase 7
Bloques reusables de CSS
-
done_all
Clase 8
Configurando un tema
-
done_all
Clase 9
Layout de la app
-
done_all
Clase 10
Estilizando la página de videos
-
done_all
Clase 11
Botones del vídeo
-
done_all
Clase 12
Navegación del encabezado y del pie de página
-
done_all
Clase 13
Formulario de inicio de sesión
-
done_all
Clase 14
Mostrar navegación y footer condicionalmente
-
done_all
Clase 15
Registro de usuario y rutas condicionales
-
done_all
Clase 16
Vista de la subida de archivos
-
done_all
Clase 17
Vista del perfil de usuarios
-
done_all
Clase 18
Botón para cerrar sesión
-
done_all
Clase 19
Vista individual de videos
-
-
check_circle_outlineMódulo 6 | 7 clases
Scroll infinito
expand_more -
check_circle_outlineMódulo 7 | 4 clases
Deploy a producción
expand_more -
check_circle_outlineMódulo 8.-
Examen del curso
expand_more-
done_all
Examen
Examen final del curso
-