这是我在一个节点中的代码 - 表示一旦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