我正在使用' lodash.template'像这样
source("hlp/util1.R")
然后我生成像这样的emailHTML
var compiled = _.template('<% _.forEach(image, function(image) { %><td><img src="https://s3.amazonaws.com/<%- image.image %>"</td><% }); %>');
然后我发送这样的电子邮件
res.render('templates/reset-password-email', {
name: name,
qc: qc,
images: compiled(qc),
appName: appName
}, function (err, template) {
if (err) {
console.log(err)
}
emailHTML = template;
callback(null, arr);
});
我遇到的问题是编译的lodash.template {{images}}被显示为文本而不是Html。例如,下面的html显示为文本而不是html。
var smtpTransport = nodemailer.createTransport(config.mailer.options);
var mailOptions = {
to: 'user@email.com',
from: config.mailer.from,
subject: 'subjet',
attachments: [
{
path: filePath
}
],
html: emailHTML
};
smtpTransport.sendMail(mailOptions, function (err) {
if (err) {
console.log(err);
}
//done(err, 'done');
});
有人可以帮我弄清楚我做错了什么。一如既往地感谢您的帮助
答案 0 :(得分:0)
您的true ? "a" : false ? "b" : "c"
代码未关闭。添加结束true ? "a" : (false ? "b" : "c")
,它应该可以找到。