Sebastian Gomez
Cuando trabajamos con estilos en aplicaciones de React, nos encontramos con dos tipos principales de estilos: 💠 Estilos Globales y 🧩 Estilos por Componentes. Veamos cómo trabajar con estos estilos en Next.js.
Para usar estilos globales, necesitamos importarlos en el punto de entrada de nuestra aplicación. Pero, ¿cuál es el punto de entrada de una aplicación en Next.js? 🤔
Realmente, ese punto de entrada ya está creado cuando utilizamos Next.js, pero si deseamos importar estilos globales, no nos queda otra opción que crearlo nosotros mismos.
Solo debemos crear un archivo en la carpeta pages y nombrarlo _app.jsx. Ya que estamos sobreescribiendo este punto de entrada para la aplicación, lo mínimo que debemos escribir para que no se altere el funcionamiento normal es lo siguiente:
// Exporta por defecto una función llamada 'App'.
export default function App({ Component, pageProps }) {
// Retorna un elemento 'Component', que es un componente de React.
// También pasa las propiedades 'pageProps' a este componente mediante el uso del operador "spread" {...pageProps}.
return <Component {...pageProps} />
}
Ahora, para agregar nuestros estilos globales, simplemente importamos los archivos CSS allí:
// Importa el archivo 'flexbox.css', que contiene estilos CSS relacionados con la técnica de diseño de Flexbox.
import 'flexbox.css';
// Importa el archivo 'mystyles.css', que contiene estilos CSS personalizados para el proyecto.
import '../mystyles.css';
// Exporta por defecto una función llamada 'App'.
export default function App({ Component, pageProps }) {
// Retorna un elemento 'Component', que es un componente de React.
// También pasa las propiedades 'pageProps' a este componente mediante el uso del operador "spread" {...pageProps}.
return <Component {...pageProps} />
}
Cuando no queremos usar CSS Global, Next.js soporta 📦 módulos de CSS. Esto nos permite aislar el CSS de nuestros componentes para evitar colisiones.
Podemos importar un módulo de CSS en cualquier parte de nuestra aplicación. Para crear un módulo de CSS, debemos usar una sintaxis especial en el nombre del archivo: styles.module.css.
Esto hace que los módulos de CSS sean una solución perfecta para estilizar los componentes. Por ejemplo:
components
button.jsxbutton.module.css
🔮 Personalmente, prefiero usar una solución diferente cuando estoy estilizando mis aplicaciones de React. Lo veremos en el siguiente post.
En este post, aprendimos cómo utilizar estilos globales y estilos por componentes en aplicaciones de React utilizando Next.js. También vimos cómo importar y utilizar módulos de CSS para evitar colisiones entre los estilos de los componentes.
📢 Déjame un comentario si te sirvió, si quieres añadir alguna opinión o si tienes alguna duda. No dudes en dejarme un comentario abajo, y recuerda que
Creador de contenido principalmente acerca de tecnología.