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

331
Vistas
¿Cómo pasar estilos al componente secundario y usarlo como estilo de alcance en Vue?

Tengo un componente padre:

 <template> <ChildComponent :styles="styles" /> </template> <script> export default { data: () => ({ styles: ` p { color: red } ` }) } </script>

Y este es el componente hijo:

 <template> <p>Hello World</p> </template> <script> export default { props: { styles: { type: String, required: true } } } </script> <style scoped> </style>

Ahora quiero usar esos estilos proporcionados por el componente principal en el elemento secundario como estilos de alcance. Como por ejemplo:

 <!-- ChildComponent.vue --> <style scoped> p { color: red } </style>

¿Hay alguna manera de hacerlo?

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Si desea apuntar a los elementos secundarios con un estilo de alcance, debe usar el selector profundo.

que se puede hacer con

 a >>> b { color : red; } /deep/ ab { color : red; } a::v-deep b { color : red; }

Aquí está la explicación completa: https://vue-loader.vuejs.org/guide/scoped-css.html#child-component-root-elements

over 4 years ago · Santiago Trujillo Denunciar

0

Si desea agregar el estilo en su componente secundario, según el componente principal que lo llama, puede pasar un atributo como accesorio y usarlo como una clase en el componente secundario. Siguiendo tu ejemplo:

Componente principal:

 <template> <ChildComponent styles="parent-style" /> </template>

Componente hijo:

 <template> <section :class="styles"> <p>Hello World</p> </section> </template> <script> export default { props: { styles: { type: String, required: true } } } </script> <style lang="scss" scoped> .parent-style { p { color: red; } } </style>
over 4 years ago · Santiago Trujillo 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