Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

138
Visualizações
cómo hacer esperar en una llamada de búsqueda en javascript

quiero hacer una pausa de 1 segundo en una llamada de búsqueda y no funciona, el código es este:

 async function sendStats(image, endimage, chat, id) { let finalimage = image + endimage; fetch(finalimage) .then(res => { if (res.ok) { res.body.pipe(fs.createWriteStream('./imgs/image.png')); bot.sendPhoto(chat, finalimage); } else { finalimage = image + "i" + endimage; fetch(finalimage) .then(res => { if (res.ok) { res.body.pipe(fs.createWriteStream('./imgs/image.png')); bot.sendPhoto(chat, finalimage); } else { bot.sendMessage(chat, "spiacenti ma non abbiamo un immagine di questo mostro :("); } }) } let mstr = mostri.filter(x => x.id == id); let desc = mstr[0].description; let elements = mstr[0].elements; await sleep(1000); bot.sendMessage(chat, desc); }) .catch((err) => { console.log(err) }); } function sleep(ms) { return new Promise((resolve) => { setTimeout(resolve, ms); }); }

quiero enviar el bot.sendmessage de desc después de sendphoto porque ahora está invertido y no me da mensajes de error

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

El problema con su código es que está utilizando la palabra clave await sin una función async .


Creo que es posible que te hayas confundido con esta función async al usar la palabra clave await con sleep() .

 async function sendStats(image, endimage, chat, id) {}

El problema es que su función sleep() está dentro de otra función, por lo que la función sendStats() no ayudará con su palabra clave await .


La solución para este problema es agregar una palabra clave async a la función en la que se encuentra la función sleep() .

 fetch(finalImage) .then(async (res) => { await sleep(1000); });

La línea 2 ha sido modificada.

La razón por la que esto funciona es porque la función en la que se encuentra la palabra clave await tiene la palabra clave async agregada a la función, lo que especifica que la función tiene una tarea asíncrona.


En conclusión, el problema con su código fue que olvidó agregar la palabra clave async a la función que await allí.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda