如何为对象值分配两个不同的变量?

时间:2017-12-04 00:55:31

标签: javascript node.js nodemailer

不确定如果我的标题有意义,但这就是我遇到的问题。

我有两个HTML输出:

let output1 = `<h1>Header</h1>`
let output2 = `<div> // content </div>`

我有这个:

let mailOptions2 = {
      from: '"xyz" <xyz@info.com>', // sender address
      to: mailList, // receiver or receivers
      subject: 'XYZ', // Subject line
      html:       // html body
  };

我希望将output1output2分配给html。我试图将两者放在一个数组中,但它一直给出未定义的错误。所以我希望将output1发送到mailList中的第一个地址,依此类推。溶液

2 个答案:

答案 0 :(得分:0)

尝试连接它们:

html: output1 + output2

编辑:根据更新的要求;

将变量放在数组中。

let output = [`<h1>Header</h1>`, `<div> content </div>`, ....]

然后在循环中创建mailOptions变量。

for(i = 0; i < mailList.lngth; i++) {
    let mailOptions = {
        from: '"xyz" <xyz@info.com>',
        to: mailList[i],
        subjects: 'XYZ',
        html: output[i] 
    }
}

答案 1 :(得分:0)

这应该有效:

outputs = ["1st HTML", "2nd HTML"];

for(var i = 0; i < mailList.length; i++){
    let mailOptions2 = {
        from: '"xyz" <xyz@info.com>',
        to: mailList[i],
        subject: 'XYZ',
        html: outputs[i % outputs.length]
    };
    // send your email here
}