在nodemailer html正文中插入数组项



我使用nodemailer发送邮件,其中包含HTML作为邮件正文。我需要循环遍历一个数组,并将数组项作为列表放入HTML中。我尝试了forEach方法和for循环,但都是徒劳的。

阵列

[
"1 ABC 1",
"2 XYZ 1",
"3 ZXC 1",
"4 RYT 1",
]

节点编译器代码

var mailOptions = {
from: '<xyz@gmail.com>',
to: email,
subject: 'Your order has been placed successfully.',
html:`<h2>Your order confirmation is below</h2>
<li>${arrayItems},</li>`
};

我需要在上面显示的li标记中显示所有数组元素。我使用HTML变量而不是新文件的原因是,当我将HTML代码放在另一个文件中时,Gmail会拒绝邮件,而接收者没有收到。我试图在这个HTML变量中放置脚本标记,但它返回未定义的结果。

检查下面的示例以将列表生成为文本并嵌入到html主体中。

var list = [
"ABC 1",
"XYZ 1",
"ZXC 1",
"RYT 1",
];
var arrayItems = "";
var n;
for (n in list) {
arrayItems += "<li>" + list[n] + "</li>";
}
var mailOptions = {
from: '<xyz@gmail.com>',
to: 'email',
subject: 'Your order has been placed successfully.',
html: `<h2>Your order confirmation is below</h2>
<ul>${arrayItems},</ul>`
};
console.log(mailOptions);

最新更新