Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

234
Vistas
Obtiene el ícono prop y lo pasa a la función styled()

Obtengo un accesorio de ícono y lo paso a la función de estilo para crear un ícono estilizado basado en él

 const IconComponent = ({ isActive, icon }) => { const StyledIcons = styled(icon)` fill: #1f6ed4; & path { fill: ${(props) => (props.isActive ? '#1F6ED4' : '#232323')}; } ` return <StyledIcons isActive={isActive} /> }

funciona , pero recibo advertencias como las siguientes:

consola

¿Hay alguna otra forma de crear mi componente StyledIcons y al mismo tiempo recibir el accesorio de icono?

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Debe mover sus StyledIcons fuera del componente IconComponent y usar as accesorio para pasar su componente de icon :

 const StyledIcons = styled.svg` fill: #1f6ed4; & path { fill: ${(props) => (props.isActive ? '#1F6ED4' : '#232323')}; } ` const IconComponent = ({ isActive, icon }) => { return <StyledIcons as={icon} isActive={isActive} /> };

ejemplo de trabajo

Editar componente dinámico de componentes con estilo

Y si no tiene control sobre el icon prop y quiere evitar la segunda advertencia

Advertencia: React no reconoce la propiedad isActive en un elemento DOM...

puede prefijar el accesorio isActive con un signo de dólar ($), convirtiéndolo en un accesorio transitorio :

 const StyledIcons = styled.svg` fill: #1f6ed4; & path { fill: ${(props) => (props.$isActive ? "#1F6ED4" : "#232323")}; } `; const IconComponent = ({ isActive, icon }) => { return <StyledIcons as={icon} $isActive={isActive} />; };
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda