【问题标题】:nodemailer sendMail callback function never runnodemailer sendMail 回调函数从不运行
【发布时间】:2018-09-24 04:15:39
【问题描述】:

我有一个使用 nodemailer 模块发送电子邮件的 nodejs 代码。电子邮件发送成功,但回调函数从未执行。所以我无法通知用户是否发送了电子邮件。有人可以帮忙吗?

var mailOptions = {
        from: emailFrom,
        to: emailTo,
        subject: subject,
        html: content,
        attachments: attachments,
}
transport.sendMail(mailOptions, (error, info) => {
        if (error) {                        
            console.log("Error in sending mail");
        }                   
        console.log("Success");
});

【问题讨论】:

    标签: javascript node.js callback nodemailer


    【解决方案1】:

    尝试使用function 关键字而不是箭头函数(=>),原因之一可能是节点或nodemailer 版本和内部错误检查始终写入return 关键字,否则它将继续执行代码。

    transport.sendMail(mailOptions, function(error, info) {
      if (error) {                        
        return console.log("Error in sending mail");
      }                   
      console.log("Success");
    });
    

    【讨论】:

      【解决方案2】:

      用作承诺,为我工作

      mail
        .sendMail(mailOptions)
        .then((res) => {
          console.log(res);
        })
        .catch((e) => {
          console.log(e)
        });
      

      【讨论】:

        猜你喜欢
        • 2023-02-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-03-12
        • 2014-06-20
        • 1970-01-01
        • 2021-02-16
        相关资源
        最近更新 更多