等待和异步切换功能的顺序

问题描述

我的服务器NodeJS出现问题。我认为这与 await / async

有关

要做的是制作一个使用Socket从PDF(带有伪造者)创建电子邮件(带有nodemailer)并将其发送到电子邮件地址的系统。

所以我必须先创建PDF,然后再通过电子邮件发送。

这是我的代码

async function CreatePDF(){ // Fonction cree
      
      console.log('Trying to make the PDF');
      try{
        const browser = await puppeteer.launch();
        const page = await browser.newPage();
    
        await page.setContent('<body><style>' + HeadHTML + '</style>'+ PageHTML + '</body>');
        await page.emulateMedia('screen');
        await page.pdf({
          path: path.join(__dirname,'Nouveau dossier',NumberOfTheFile + '.pdf'),format: "A4",printBackground: true
        });
    
        console.log('PDF Created!');
        
        SendEmail(); //Doesn't use async or await
    
      } catch (e)
      {
        console.log('Error: ',e)
      }
    }




function SendEmail(){ 

   console.log('Trying to send the email');

   //Put everything to send Email here.

}

问题是系统尝试发送电子邮件后创建了PDF。我不知道是否有一种方法可以使人偶在没有等待/异步的情况下工作,或者是否可以确保事情朝着正确的方向发展。

在控制台上,我得到:

尝试发送电子邮件

...

已创建PDF

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)