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

310
Vistas
¿Cómo esperar a buscar la API para terminar de usar async/await?

Tengo este programa Javascript que cargará imágenes desde mi servidor local para la transferencia de datos, luego asignará sus archivos a mi entrada con tipo de archivo, pero realmente no tengo idea de cómo esperar a que finalice la API de búsqueda antes de ejecutar la última parte del programa. Espero que me puedan ayudar con mi problema porque soy principiante.

 function image_select(BHID) { all_fileBuffer[BHID] = new DataTransfer(); //add images from database to filebuffer setTimeout(async function () { $("div#container-"+BHID+" img").each(async function (e) { await fetch($(this).attr('src')) .then(res => res.blob()) .then(blob => { all_fileBuffer[BHID].items.add(new File([blob], $(this).attr('id'), blob)); }) }); }, 1000); all_attachments[BHID] = document.getElementById("image-" + BHID).files; // <-- reference your file input here // append the file list to an array iteratively for (let i = 0; i < all_attachments[BHID].length; i++) { // Exclude file in specified index all_fileBuffer[BHID].items.add(all_attachments[BHID][i]); } document.getElementById('image-' + BHID).files = all_fileBuffer[BHID].files; all_image[BHID] = document.getElementById('image-' + BHID).files; all_images[BHID] = []; for (i = 0; i < all_image[BHID].length; i++) { all_images[BHID].push({ "name": all_image[BHID][i].name, "url": URL.createObjectURL(all_image[BHID][i]), "file": all_image[BHID][i], }) } document.getElementById('container-' + BHID).innerHTML = ""; document.getElementById('container-' + BHID).innerHTML = image_show(BHID); console.log(all_fileBuffer[BHID].files); }
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

No entiendo muy bien qué parte del código necesita usar después de su búsqueda, pero varias funciones asíncronas se manejan así

 async function main () { await Promise.all([1, 2, 3].map(x => new Promise((resolve) => setTimeout(resolve, x*1000))) ) console.log('further code') }

Así que en tu caso sería algo como esto:

 async function imageSelect () { // ... await Promise.all([ $("div#container-"+BHID+" img").map(async function (e) { await fetch($(this).attr('src')) .then(res => res.blob()) .then(blob => all_fileBuffer[BHID].items.add( new File([blob], $(this).attr('id'), blob)); }) ]); console.log('fetch done') // ... }
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