nodemailer author已經明確表示他不支持承諾。我想我會盡我的手在使用藍鳥,但我在它的企圖似乎沒有抓到任何錯誤Nodemailer拋出:用藍鳥Promisify Nodemailer?
doit().then(function() {
console.log("success!");
}).catch(function(err) {
console.log("There has been an error");
});
:
var nodemailer = require('nodemailer');
var Promise = require('bluebird');
// build the transport with promises
var transport = Promise.promisifyAll(nodemailer.createTransport({...}));
module.exports = {
doit = function() {
// Use bluebird Async
return transport.sendMailAsync({...});
}
}
然後我做叫它但是,當提供無效的電子郵件時,我看到:
Unhandled rejection Error: Can't send mail - all recipients were rejected
因此,nodemailer錯誤未被我的藍鳥承諾捕獲。我做錯了什麼?
你不向我們展示你的整個代碼 - 請再現它的一個版本 - 也 - 在未處理的拒絕錯誤是什麼? (您收到此消息的事實表明bluebird _does_看到錯誤。 –
與couchbase crud方法相同的問題。 –