如何将快速变量传递给.jade电子邮件模板文件

时间:2016-06-18 17:08:24

标签: node.js templates express pug

我是mam nodemailer Here和我的电子邮件模板Here

public class FirebaseInstanceIDService extends FirebaseInstanceIdService {    
    @Override
    public void onTokenRefresh() {    
        String token = FirebaseInstanceId.getInstance().getToken();    
        registerToken(token);
    }

    private void registerToken(String token) {

    }
}

我在我的模板文件夹中有我的3个玉文件,如文档中所建议的那样。 <script> $("#carousel").carousel({ pause: false, // don't forget the colon here, it's an object interval: false, wrap: false }) </script> exports.newRegistration = function(user, req){ var sendPwdReminder = transporter.templateSender(new EmailTemplate(templateDir)); // setup e-mail data with unicode symbols var formattedUrl = url.format({ protocol: req.protocol, host: req.get('host') }); // use template based sender to send a message sendPwdReminder({ from: '"mydomain.com " <donotreply@mydomain.com>', // sender address to: user.Email, // EmailTemplate renders html and text but no subject so we need to // set it manually either here or in the defaults section of templateSender() subject: 'New Account Registration ✔' }, { username: user.username, password: user.password, redirectUrl: url.parse(formattedUrl + '/signup/confirm/' + user.Username + '/' + user.Token, true) }, function(err, info){ if(err){ console.log('Error sending email', err); }else{ console.log('Password reminder sent'); } }); } html.jade

我的代码正在运行并将模板发送到目标电子邮件。但是,我无法将一些变量发送到我的模板。示例用户名,姓名,电子邮件等。我希望能够添加像

text.jade

请问如何将变量传递给jade模板?我还没找到类似的例子。任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:1)

我会稍微改写一下。如果您先致电var template = new EmailTemplate(templateDir); template.render({"username": user.username}, function(err, result) { var mailOptions = {}; transporter.sendMail(mailOptions, function(error, info) { // Handle error, etc }); }); ,您应该能够获取电子邮件的HTML或文本,您可以将其传递给nodemailer:

   format: 'mm/dd/yyyy',
   startDate:..

答案 1 :(得分:0)

在他看来唯一的错误代码中,就是你在寻找这个变量的方式。

我完全按照你的方式做了,而不是Jade使用EJS。然后拉出变量放置&lt;%= variable%&gt;而不是{{variable}}