html 템플릿을 사용하여 nodemailer로 이메일을 보내려고합니다. 그 템플릿에서 동적으로 일부 변수를 주입 할 필요가 있으며 실제로 그렇게 할 수 없습니다. 내 코드 : 나는 몇 가지 예제를 발견했습니다변수를 nodemailer의 html 템플릿에 전달
Hello {{username}}!
,이 같은 떨어지게했다 :
var nodemailer = require('nodemailer');
var smtpTransport = require('nodemailer-smtp-transport');
smtpTransport = nodemailer.createTransport(smtpTransport({
host: mailConfig.host,
secure: mailConfig.secure,
port: mailConfig.port,
auth: {
user: mailConfig.auth.user,
pass: mailConfig.auth.pass
}
}));
var mailOptions = {
from: '[email protected]',
to : '[email protected]',
subject : 'test subject',
html : { path: 'app/public/pages/emailWithPDF.html' }
};
smtpTransport.sendMail(mailOptions, function (error, response) {
if (error) {
console.log(error);
callback(error);
}
});
것은 이제 나는이 같은 emailWithPDF.html 무언가를 원하는 가정 해 봅시다
...
html: '<p>Hello {{username}}</p>'
...
하지만, 나는 별도의 html 파일에서 원한다. 가능한가?
'.pug' 파일의 경우처럼 우리가하는 것과 같은 다른 방법이 있는가, 변수를 맵핑하기 위해 객체를 전달한다. –