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

140
Vistas
¿Cómo aplicar IntersectionObserver a la directiva v-for en la API de Composición?

Puedo usar un IntersectionObserver para cargar imágenes de forma diferida de esta manera:

 <template> <div id="gallery" class="gallery"> <div class="gallery-card"> <a href="#"><img src="../../images/1.jpg"></a> <a href="#"><img src="../../images/ph.png" data-src="../../images/2.jpg"></a> <a href="#"><img src="../../images/ph.png" data-src="../../images/3.jpg"></a> <a href="#"><img src="../../images/ph.png" data-src="../../images/4.jpg"></a> <a href="#"><img src="../../images/ph.png" data-src="../../images/5.jpg"></a> <a href="#"><img src="../../images/ph.png" data-src="../../images/6.jpg"></a> </div> </div> </template> <script setup> import {onMounted} from "vue"; onMounted(() => { let config = { rootMargin: '0px 0px 50px 0px', threshold: 0 }; const observer = new IntersectionObserver(function(entries, self) { entries.forEach(entry => { if(entry.isIntersecting) { const img = entry.target img.src = img.dataset.src self.unobserve(img); } }); }, config); const lazyImages = document.querySelectorAll('[data-src]'); lazyImages.forEach(img => { observer.observe(img); }); }) </script>

pero cuando trato de observar elementos generados con la directiva v-for , el observador no puede leer los elementos representados. Supongo que el observador se ejecuta antes de que se representen los elementos.

¿Cómo aplico IntersectionObserver a elementos generados en la directiva v-for como:

 <template> <div id="gallery" class="gallery"> <div v-for="row in imageTable" class="gallery-card"> <a href="#gallery-view"><img :src="'../../images/ph.png'" :data-src="'/storage' + row['path']"></a> </div> </div> </template>
about 4 years ago · Juan Pablo Isaza
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