• Jobs
  • About Us
  • professionals
    • Home
    • Jobs
    • Courses and challenges
  • business
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

137
Views
Error al intentar diseñar un componente directamente con componentes con estilo

Estoy tratando de diseñar un componente como este:

 function _MenuItem({label, icon}){ return <div> {icon} <p>{label}</p> </div> } export const MenuItem = styled(props => <_MenuItem {...props} />)` color: red; p{color: red} *{color: red} `

El componente se está renderizando, pero los estilos no se están aplicando.

Me las arreglé para aplicar los estilos haciendo un div con estilo y creando el componente a partir de ese div , pero me preguntaba si hay una manera de aplicar los estilos directamente al componente.

Soy muy nuevo con reaccionar y más con componentes con estilo, así que asumo que he entendido mal algunos conceptos básicos.

about 3 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Hacer un div con estilo es la forma correcta de hacer las cosas. No pude encontrar nada sobre diseñar un componente directamente ni sentí la necesidad de hacerlo antes.

Incluso cuando los documentos de componentescon estilo describen cómo diseñar cualquier componente , básicamente están diseñando un elemento con una sintaxis diferente.

No parece haber una razón suficientemente buena para hacer lo que quiere hacer, ya que puede lograr lo que quiere lograr usando los componentes con estilo según lo previsto.

La siguiente forma de hacer las cosas funciona y es súper simple:

 import styled from "styled-components" const _MenuItem = ({label, icon}) => { return <Root> {icon} <p>{label}</p> </Root> } const Root = styled.div` color: red; p{color: red} *{color: red} ` export default _MenuItem;

Avíseme si me falta algún caso de uso específico u otro.

about 3 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Our process Sales
Legal
Terms and conditions Privacy policy
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recommend me some offers
I have an error