Puppeteer 尽管处于 await 函数中却没有及时返回?

Puppeteer not returning in time despite being in an await function?

我有一个生成 PDF 的 Puppeteer 函数:

const generatePdfBase64 = async (html) => {

    const browser = await puppeteer.launch();
    const page = await browser.newPage()
    await page.setContent(html)
    const pdf = await page.pdf();
    await browser.close();
    console.log("PDF Generated")

    const pdfBase64 = new Buffer.from(pdf).toString('base64');

    return pdfBase64
}

const generatedPDF = await generatePdfBase64(html)

doSomethingWithPDF(generatedPDF)

这是在生成正确的字符串,但是在 generatePdfBase64 函数返回 pdfBase64 之前,doSomethingWithPDF 正在继续。这怎么可能?以及如何修复?

在上游的某些代码中缺少 await——上面应该可以工作!