EJS/Javascript - 对于每 3 个条目,写入 X

EJS/Javascript - For every 3rd entry, write X

本文关键字:写入 Javascript 于每 EJS      更新时间:2023-09-26

我目前正在学习用NodeJS编写EJS视图。目前,我正在制作一个产品页面,每行有三个项目,所有项目都是从MongoDB中提取的。我目前有大约 11 个项目需要测试。但是,我在如何编写特定内容方面遇到了麻烦。每第三项之后,我需要写以下内容。

</div>                                       
<div class="row">

我的电流循环如下所示。任何帮助不胜感激!

<% data.forEach(function(item) { %>
    <div class="col-md-4 col-sm-4 col-xs-6">
        <div class="item">
            <!-- Use the below link to put HOT icon -->
            <!-- <div class="item-icon"><span>HOT</span></div> -->
            <!-- Item image -->
            <div class="item-image">
                <a href="/p/<%= item.id %>"><img src="/img/items/<%= item.id %>.jpg" alt="" class="img-responsive"/></a>
            </div>
            <!-- Item details -->
            <div class="item-details">
                <!-- Name -->
                <h5><a href="/p/<%= item.id %>"><%= item.title %></a></h5>
                <div class="clearfix"></div>
                <!-- Para. Note more than 2 lines. -->
                <p><%= item.desc %></p>
                <hr />
                <!-- Price -->
                <div class="item-price pull-left"><%= item.price %></div>
                <!-- Add to cart -->
                <div class="pull-right"><a href="/#" class="btn btn-danger btn-sm">Add to Cart</a></div>
                <div class="clearfix"></div>
            </div>
        </div>
    </div>
<% }); %>
这将从

第三次迭代开始每三分之一打印一次。

<% data.forEach(function(item, i) { %>
  // Stuff
  <% if((i + 1) % 3 === 0) %>
    </div>                                       
    <div class="row">
  <% } %>
<% }) %>