這是我在一個節點中的代碼 - 表示一旦sql事務成功完成就發送一封電子郵件!節點回調 - 代碼不能正常工作
router.post('/',function(req,res,next){
sql.connect(config).then(function() {
var request = new sql.Request();
request.query(`update projects set CIP_NCIP= '${req.body.cip_noncip}' , Capital_Expense ='${req.body.capital_expensed}' , Approval_Status ='Approved' where Project_ID ='${req.body.projid}'`).then(function(recordset) {
console.log('Recordset: ' + recordset);
console.log('Affected: ' + request.rowsAffected);
}).catch(function(err) {
if(err) {
console.log('Request error: ' + err);
}
})
}).then(
transporter.sendMail(mailOptions, function(error, info){
if (error) {
console.log(error);
} else {
console.log('Email sent: ' + info.response);
}
})).catch(function(err) {
if (err) {
console.log('SQL Connection Error: ' + err);
}
});
});
SQL插入似乎工作,但它不是執行的代碼
transporter.sendMail(mailOptions, function(error, info){
if (error) {
console.log(error);
} else {
console.log('Email sent: ' + info.response);
}
})
相當新的回調和ES5該位。建議表示歡迎
的問題,我可以看到,但只要代碼執行,它看起來likt它應該工作的夫婦 - 如果移動'的Sendmail調用'request.query'的回調函數可以在那裏正常工作嗎?還有'mailOptions'從哪裏來?在代碼中沒有看到,我們是否假設這存在並且配置正確? – James
這是整個js文件https://www.itextpad.com/nXB8DStC2s – SSS
甚至在request.query回調中的console.log('test')也不起作用,這很令人困惑。 – SSS