Я пытаюсь отправить электронное письмо, используя мой собственный шаблон с движком мопса, используя шаблоны электронной почты.Вот мой код:
var mailer = require("nodemailer");
const logger = require('./logger');
var path = require('path');
var EmailTemplate = require('email-templates');
var templateDir = path.join(__dirname, "../", 'templates', 'resetPassword')
var mailTemplate = new EmailTemplate(templateDir)
// IF i do print templateDir here, it gives me the absolute path
var smtpTransport = mailer.createTransport({
service: "Gmail",
auth: {
user: "myuser@gmail.com",
pass: "mypass"
}
});
exports.sendPasswordReset = async (to, token) => {
var locals = {
resetUrl: 'someurlWithToken' + token.toString()
};
mailTemplate.render(locals, function(err, temp){ // It throws error with path argument must of type string
if(err){
logger.info("ERROR in Render email template" + err)
} else {
smtpTransport.sendMail({
from: "myuser@gmail.com",
to: to,
subject: "Password Reset Link",
text: temp.text,
html: temp.html
}, function(error, response){
if(error){
logger.info('Mail Error' + error);
return console.error(err)
} else{
logger.info("Message sent: " + response.message);
return response;
}
});
}
})
}
Я не уверен, что мне не хватает.Документ для шаблона электронной почты показывает пример без транспорта почтовой системы.