Не может передать переменные в шаблон pug/jade с шаблонами электронной почты узла
Я пытаюсь отрисовать шаблон мопса / нефрита с помощью шаблонов электронной почты узла.
var confirmCode = generateConfirmCode(configPublic.confirmCodeLength);
var query = querystring.stringify({
code: confirmCode,
id: user._id.toString()
});
var templateDir = path.join(__dirname, '../templates', 'confirmation-email');
var confirmEmail = new EmailTemplate(templateDir);
var confirmUrl = configPublic.url + '/user/email/confirm?' + query;
var templateVals = {url: confirmUrl};
confirmEmail.render(templateVals, function(err, result) {
if (err) {
console.log(err);
}
var mailOptions = {
from: configPrivate.gmail.username,
to: user.email.address,
subject: 'confirmation',
html: result.html
};
email.send(mailOptions)
.then(function (successMsg) {
db.setConfirmCode(user, confirmCode)
.catch(function (err) { // catch setConfirmCode err
deferred.reject(err);
});
deferred.resolve(successMsg);
})
.catch(function (err) { // catch send err
deferred.reject(err);
})
Итак, я прохожу templateVals
к вызову рендеринга, и я пытаюсь выяснить, как отобразить эту информацию на визуализированном шаблоне следующим образом:
link(rel='stylesheet', href='./style.css')
|
|
p !{url}
p #{url}
p url
p templateVals.url
p #{templateVals.url}
p !{templateVals.url}
и ни одна из этих комбинаций, кажется, не работает. Я не уверен, что я делаю не так здесь. Спасибо за вашу помощь!
1 ответ
Решение
Закончилось не проблемой с кодом, а наблюдателем файла webstorm, поместившим html-файл в email-templates
каталог шаблонов, вызывающий сбой рендеринга