Resuelto: reaccionar enrutador usando estilos estáticos

El principal problema relacionado con el uso de estilos estáticos con React Router es que puede ser difícil realizar un seguimiento de las diferentes rutas y sus estilos asociados. Con estilos estáticos, cada ruta debe tener su propio conjunto de reglas CSS, que pueden volverse difíciles de manejar y mantener rápidamente. Además, si un estilo se usa en varias rutas, debe duplicarse en todas ellas, lo que dificulta mantener el código DRY (Don't Repeat Yourself).

import React from 'react';
import { BrowserRouter as Router, Route, Link } from 'react-router-dom';
import styled from 'styled-components';
 
const StyledLink = styled(Link)`
  color: palevioletred;
  font-weight: bold;

  &:hover {
    color: white;
    text-decoration: none;  
  }  
`;

 const App = () => (   <Router>     <div>       <ul>         <li><StyledLink to="/">Home</StyledLink></li>         <li><StyledLink to="/about">About</StyledLink></li>       </ul>       <hr />       <Route exact path="/" component={Home} />       <Route path="/about" component={About} />     </div>   </Router>) ;

 const Home = () => (   <div>     <h2>Home</h2>   </div>) ;

 const About = () => (   <div>     <h2>About</h2>   </div>) ;

 export default App;

1. La primera línea importa la biblioteca React.
2. La segunda línea importa los componentes BrowserRouter, Route y Link de la biblioteca react-router-dom.
3. La tercera línea importa el componente con estilo de la biblioteca de componentes con estilo.
4. La cuarta línea crea un componente StyledLink utilizando el componente Link importado de react-router-dom y lo diseña con color: palevioletred y font-weight: bold, así como un efecto de desplazamiento que cambia su color a blanco y elimina cualquier texto. decoración cuando se pasa el cursor por encima.
5. La quinta línea crea un componente de aplicación que representa un componente de enrutador con dos componentes de ruta dentro (uno para Inicio y otro para Acerca de). También presenta una lista desordenada de dos enlaces (Inicio y Acerca de) usando el componente StyledLink creado en la Línea 4 arriba de ellos, ambos separados por una etiqueta hr para fines de diseño.
6. Las líneas 8 a 11 crean dos componentes funcionales llamados Inicio y Acerca de que representan etiquetas h2 con sus respectivos nombres dentro de ellas cuando los llaman sus respectivos componentes de ruta en la Línea 5 sobre ambos (Inicio representa "Inicio" mientras que Acerca de representa "Acerca de" ).
7. Finalmente, Line 12 exporta el componente de la aplicación para que pueda usarse en cualquier otro lugar de nuestra aplicación si es necesario.

Estilos estáticos

Los estilos estáticos en React Router son estilos que se aplican a un componente y permanecen iguales independientemente de cualquier cambio en el estado o las propiedades del componente. Esto contrasta con los estilos dinámicos, que cambian según el estado o las propiedades de un componente. Los estilos estáticos se pueden usar para crear una apariencia uniforme en toda la aplicación, así como para proporcionar una manera fácil para que los desarrolladores apliquen estilo rápidamente a los componentes sin tener que ajustarlos manualmente cada vez que hay un cambio.

paquete de componentes con estilo

Styled-components es un paquete popular para React Router que permite a los desarrolladores crear y administrar estilos a nivel de componente en sus aplicaciones React. Proporciona una manera fácil de escribir código CSS que se limita a un solo componente, lo que facilita el mantenimiento y la depuración. Los componentes con estilo también facilitan el intercambio de estilos entre varios componentes, además de brindar compatibilidad con la creación de temas. Además, los componentes con estilo se pueden usar con el componente Link de React Router, lo que permite a los desarrolladores diseñar enlaces dentro de su aplicación.

Cómo usar estilos estáticos

Los estilos estáticos se pueden usar en React Router usando el atributo de estilo en línea. Este atributo le permite aplicar un estilo directamente a un elemento sin necesidad de una hoja de estilo independiente. Para usar estilos estáticos en React Router, deberá crear un objeto de estilo y luego pasarlo como argumento a la propiedad de estilo del componente. Por ejemplo:

const miEstilo = {
color de fondo: '#f2f2f2',
tamaño de fuente: '20px',
color: '#000'
};

Artículos Relacionados:

Deja un comentario