• Jobs
  • About Us
  • professionals
    • Home
    • Jobs
    • Courses and challenges
  • business
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

118
Views
Uso de la función de mapa con Async/Await

Estoy aprendiendo a usar Titiritero y el caso es que cuando trato de mapear mi objeto de matriz de datos no puedo hacerlo usando la función de mapa. ¿Hay alguna forma de mapearlo con async/await o hay otra forma?

 const puppeteer = require("puppeteer"); module.exports.screenshot = async (req, res) => { let data = [ { url: "someurl1", src: "someplace1" }, { url: "someurl2", src: "someplace1" } ]; let browser = await puppeteer.launch(); let page = await browser.newPage(); try { let files = data.map(info => ( await page.goto(info.url) //here i can´t await await page.screenshot({ path: info.src }) //these two functions )); await browser.close(); res.send({ data: files }) } catch (error) { console.error(`An error has occurred ${error}`); } }
about 3 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Tiene una función de devolución de llamada dentro de map() que es un bloque separado de la función externa.

Para esperar dentro de usted, como mínimo, también debe hacer que la devolución de llamada sea asíncrona

 const files = data.map(async (info) => ( await page.goto(info.url), await page.screenshot({ path: info.src }) ));

Si se supone que los archivos tienen la captura de pantalla (el resultado de la última espera dentro del map() ), creo que debe agregar una coma entre esperas. Lo agregué arriba.

Una sintaxis más explícita podría ser

 const files = data.map(async (info) => { await page.goto(info.url); return await page.screenshot({ path: info.src }) });
about 3 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Our process Sales
Legal
Terms and conditions Privacy policy
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recommend me some offers
I have an error