nodemailer sendMail回调函数永远不会运行

时间:2018-09-24 04:15:39

标签: javascript node.js callback nodemailer

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

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");
});

1 个答案:

答案 0 :(得分:1)

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

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