I am using nodemailer to send emails using the following nodemailer-express-handlebars plugin. I used this {dead blog post} as reference
The code is compiling the welcome template but is not using the layout
My code is as below:
var nodemailer = require('nodemailer'); var mg = require('nodemailer-mailgun-transport'); var hbs = require('nodemailer-express-handlebars'); var config = {auth: {api_key: "key-xxx",domain: "mydomain.com}} var nodemailerTransport = nodemailer.createTransport(mg(config)); var options = { viewEngine: { extname: '.handlebars', layoutsDir: 'views/email/', defaultLayout : 'layout', }, viewPath: 'views/email/' } nodemailerTransport.use('compile', hbs(options)); nodemailerTransport.sendMail({ from: '[email protected]', to: '[email protected]', subject: 'Welcome to the XXX', template: 'welcome' }, function (err, results) { if (err) console.log('Error: ' + err); else console.log('Response: ' + results); }); My layout.handlebars has the following code
<html> <body> {{> _header }} {{{body}}} {{> _footer }} </body> </html>