Я хочу отправить электронное письмо с помощью nodemailer с помощью html-шаблона. В этом шаблоне мне нужно динамически вводить некоторые переменные, и я действительно не могу этого сделать. Мой код:Передача переменной в html-шаблон в nodemailer
var nodemailer = require('nodemailer');
var smtpTransport = require('nodemailer-smtp-transport');
smtpTransport = nodemailer.createTransport(smtpTransport({
host: mailConfig.host,
secure: mailConfig.secure,
port: mailConfig.port,
auth: {
user: mailConfig.auth.user,
pass: mailConfig.auth.pass
}
}));
var mailOptions = {
from: '[email protected]',
to : '[email protected]',
subject : 'test subject',
html : { path: 'app/public/pages/emailWithPDF.html' }
};
smtpTransport.sendMail(mailOptions, function (error, response) {
if (error) {
console.log(error);
callback(error);
}
});
Допустим, я хочу в emailWithPDF.html что-то вроде этого:
Hello {{username}}!
Я нашел несколько примеров, где было чем-л так:
...
html: '<p>Hello {{username}}</p>'
...
но Я хочу его в отдельном файле html. Является ли это возможным?
Есть ли другой способ для того же, что и в случае с файлом '.pug', мы просто передаем объект переменной map –