2017-10-12 5 views

Répondre

1

Si vous cherchez à générer du HTML de façon dynamique, vous pouvez essayer quelque chose comme EJS. Avec cela, vous pouvez créer un welcome-email.ejs qui contient toutes vos pages HTML pour l'e-mail, et quelques <% spéciales balises qui vous permettent d'insérer des variables comme ceci:

<p>Welcome, <%=user.firstName%>!</p>

const ejs = require('ejs') 
const mailgun = ... 

function sendWelcomeEmail(user) {  
    // arg 1: filepath from root, arg 2: object to pass into EJS template 
    ejs.renderFile('server/app/emailTemplates/welcome-email.ejs', {user: user.firstName}, function(err, htmlString) { 
     if (err) console.error(err); 

     // not sure how mailgun works, but it's probably like this 
     let mailOptions = { html: htmlString, to: user.email, ... } 

     mailgun.sendMail(mailOptions, (err, info) => { 
      if (err) console.error(err); 
     }); 
    }); 
};