将静态文本附加到ejs中的第一个数据索引

时间:2018-05-18 16:52:21

标签: javascript node.js ejs

假设我使用ejs将数据循环到表中。如何将一些文本附加到表格第一行中的数据

例如:

<tbody class="scroll" id="upcoming__body">
    <% data.forEach((record) => { %>
    <tr>
          <td>
          <% if(record.moneyReceived[0]) { %>
          <span>received</span>
          <% } %>
          <span style="display:block; font-size: 16pt; color:green;">$<%=record.moneyReceived%></span>
      </td>
   </tr>
</tbody>
<% }) %>

如果我的模板循环数据10次,那么我将有10行这段代码。我希望该td中的第一行有一个附加“已接收”的文本。我在上面写了一个if语句试图获得这种效果,但没有成功。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

使用.forEach循环时,您将索引作为第二个参数。因此,您可以添加一个检查,如果它是第一个索引,如

<% if(index == 0){ %>

这就是你的代码应该是这样的

<tbody class="scroll" id="upcoming__body">
    <% data.forEach((record, index) => { %>
    <tr>
          <td>
          <% if(index == 0){ %>
          <span>received</span>
          <% } %>
          <span style="display:block; font-size: 16pt; color:green;">$<%=record.moneyReceived%></span>
      </td>
   </tr>
</tbody>
<% }) %>