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

134
Vistas
API de composición de Vue3: acceso a la referencia secundaria

Estoy tratando de acceder a una referencia en un componente secundario usando la API de composición de Vue3, pero no estoy seguro de cómo hacerlo. Me gustaría agregar un evento de desplazamiento a mainContentRef para poder hacer una solicitud de recuperación para obtener más datos dentro del componente principal, pero parece que no puedo acceder a la referencia en el componente principal para agregarle el detector de eventos.

Este es mi código (algunas partes eliminadas debido a que son innecesarias para este ejemplo):

 <!-- MAIN COMPONENT --> <template> <PageWrap> <template v-slot:content> <MainContent> <template v-slot:content /> </MainContent> </template> </PageWrap> </template> <script setup> //access mainContentRef here because this is where the fetch request will be </script> <!-- MAIN CONTENT COMPONENT --> <template> <div id="main-content" ref='mainContentRef'> <slot name='content'></slot> </div> </template> <script setup> import { defineProps, ref } from 'vue'; const mainContentRef = ref(0); </script>
about 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Puede utilizar el método defineExpose de vue y luego agregar una ref para su componente MainContent y acceder a él a través de eso.

 <!-- MAIN COMPONENT --> <template> <PageWrap> <template v-slot:content> <MainContent ref="mainContentComponent"> <template v-slot:content /> </MainContent> </template> </PageWrap> </template> <script setup> const mainContentComponent = ref() // Now you can do: mainContentComponent.value.mainContentRef.value </script> <!-- MAIN CONTENT COMPONENT --> <template> <div id="main-content" ref="mainContentRef"> <slot name='content'></slot> </div> </template> <script setup> import { defineProps, ref } from 'vue' const mainContentRef = ref(0) defineExpose({ mainContentRef }) </script>

Ver también: https://vuejs.org/guide/essentials/template-refs.html#ref-on-component

Avísame si tienes alguna pregunta o si no funciona, ¡es un placer ayudarte!

about 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