如何在基础电子邮件模板上使用一系列对象?

时间:2019-02-04 17:05:39

标签: handlebars.js ejs

我正在使用基金会电子邮件,我可以通过将变量包装在raw标签中来在模板上使用变量,例如:

<raw><%= myVariable %></raw>

现在,我需要添加附件,attachmeant以数组的形式出现:

      attachmentsData: [
        {
          id: '301e165f-130e-4f89-83da-a49ff43172ce_Screenshotfrom2018-11-1916-43-01.png',
          title: 'Screenshotfrom2018-11-1916-43-01.png',
          url: 'https://s3.eu-central-1.amazonaws.com/dev-messaging-attachments/301e165f-130e-4f89-83da-a49ff43172ce_Screenshotfrom2018-11-1916-43-01.png',
        },
        {
          id: '301e165f-130e-4f89-83da-a49ff43172ce_Screenshotfrom2018-11-1916-43-02.png',
          title: 'Screenshotfrom2018-11-1916-43-02.png',
          url: 'https://s3.eu-central-1.amazonaws.com/dev-messaging-attachments/301e165f-130e-4f89-83da-a49ff43172ce_Screenshotfrom2018-11-1916-43-02.png',
        },
      ],

在文档中还说,我可以遍历src/data中以yml格式声明的数组。

但是,就我而言,我需要对象数组来自后端。

但是,如果它来自后端,则必须使用raw标签对其进行解析。

但是如果使用原始标签,我将无法使用each帮助器: https://foundation.zurb.com/emails/docs/panini.html#custom-data

您知道如何遍历此数组吗? 请注意,如果我执行<raw><%= myArray[0].name %></raw>,则可以正常工作并打印正确的值。

有什么提示吗?谢谢

1 个答案:

答案 0 :(得分:0)

如果<raw><%= myArray[0].name %></raw>有效,那么以下内容也应该有效。

<% myArray.forEach(data => { %>
    <raw><%= data.name %></raw>
<% }); %>