我想使用nodemailer发送带有HTML模板的电子邮件。在该模板中,我需要动态注入一些变量,但是我无法实现。我的代码:
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: 'my@email.com',
to : 'some@email.com',
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
文件时,我们可以通过传递对象给映射变量来实现相同的方式。是否有其他类似的方法? - Pardeep Jain