平均堆疊/的NodeJS /貓鼬的應用程序,我有這樣的代碼:警告:。然後()只節選功能
User.findByIdAsync(req.params.id)
.then(handleEntityNotFound(res))
.then(saveUpdates(req.body))
.then(sendEmail()) // this is my addition
.then(respondWithoutResult(res))
.catch(handleError(res));
功能Sendmail的看起來像這樣:
function sendEmail(body){
var mailOptions = {
from: 'Excited User <[email protected]>',
to: '[email protected]',
subject: 'Hello',
text: 'body text here'
};
var smtpConfig = {
host: config.mailgun.smtp_host,
port: 465,
secure: true,
auth: {
user: config.mailgun.smtp_user,
pass: config.mailgun.smtp_pass
}
};
var transporter = nodemailer.createTransport(smtpConfig);
transporter.sendMail(mailOptions, function(error, info){
if(error){
return console.log(error);
}
console.log('Message sent: ' + info.response);
});
}
當我運行它,我得到一個錯誤: 警告:。那麼()只節選功能,但傳遞:[對象未定義]
我應該在sendEmail,以便它與工作。然後改變() ?
您需要傳遞一個返回Promise的函數,我猜。 –
感謝@trincot,這工作,但然後旋轉輪不停止...看起來像沒有正確完成。 –