我收到post requst,然后处理与表单一起发送的数据。一切正常,直到我添加部分保存一些数据到json文件。 我的问题是在mongoose的dataModel上回调save()方法。 代码如下所示:
dataModel.save((err, doc) => {
if(err)
console.log('Error: ', err);
else {
let time = Date.parse(doc.expirationDate);
fs.readFile('./db.json', (err, data) => {
if(err)
console.log('Error: ', err);
data = JSON.parse(data);
data.timers.push({'id': doc._id, time: time});
fs.writeFile('./db.json', JSON.stringify(data), err => {
if(err)
console.log('Error: ', err);
});
});
mailer.transporter.sendMail({
from: 'Me <me@gmail.com>',
to: `you@gmail.com`,
subject: 'Subject',
html: `<h1>Something</h1>`,
text: `Something`
}, (err, info) => {
if(err)
console.log('Error: ', err);
else
console.log('Mail has been sent. ', info.response);
});
mailer.transporter.sendMail({
from: 'Me <me@gmail.com>',
to: `someoneelse@gmail.com`,
subject: 'Different subject',
html: `Different message`,
text: 'Different message'
}, (err, info) => {
if(err)
console.log('Error: ', err);
else
console.log('Mail has been sent. ', info.response);
});
}
});
奇怪的是,使用此代码,json文件保存正确,但邮件未发送,但如果我评论部分保存db.json文件,邮件发送正确。你知道什么是错的吗?