私は現在、smtpTransportを使用して電子メールで送信できるように、ファイルストリームにhtmlデータを設定しようとしています。私はejsを使用しようとしましたが、私が見ているほとんどすべての例では、ejs.renderを使用してコンテンツを表示していますが、それをさらに文字列として送信しようとしています。私はメールチンパンジーのようなものを使って手動でやりたいのですが、まだ役に立たないものは何も見つかりませんでした。コンテキストについては、ユーザーが何かを購入してアイテムをテーブルに取り込むと、領収書メールを作成しようとしています。 EJS外の別のプラットフォームとしての使用に私は開いているどのように表示するのではなく、投稿用にノード内のhtmlデータを動的に取り込むことができますか?
router.post('/placeorder', function(req, res) {
var orderInfo = req.body;
var delivery = orderInfo.deliveryDate.split("00:00:00")[0] + " from " + orderInfo.deliveryTime;
//Email buyer receipt
fs.readFile('buyer_receipt.html',function (err, data){
if (err) {
console.log(err);
} else {
var renderedHtml = ejs.render(data, {cart: orderInfo.cart, subtotal: orderInfo.subtotal, fee: orderInfo.fee, total: orderInfo.total, deliveryInfo: delivery});
smtpTransport.sendMail({
from: "Test <[email protected]>",
to: orderInfo.user.user.ownerName + " <" + orderInfo.user.user.email +">",
subject: "Thanks for your order!",
html: renderedHtml
}, function(error, response){
if(error) {
console.log(error);
} else {
console.log("Mail sent: " + response.message);
}
});
}
});
:「:this.templateText.replace関数エラーされていない例外TypeError」ここで私はEJSを使用しますが、取得しようとしてきたコードですよくこれを解決するEJSとCrocodileJSためEmailTemplatesを使用し
はパグhttp://stackoverflow.com/questions/別名ヒスイを使用した例であります21654051/how-to-send-an-html-page-in-node-in-nodejs/21654249#21654249 – Ryan