【问题标题】:Jade template engine - Each Iteration OffsetJade 模板引擎 - 每个迭代偏移量
【发布时间】:2012-04-17 17:53:31
【问题描述】:

在使用 Jade 模板引擎时,有没有办法抵消“每次”迭代?

例如传入名为list的对象时:

ul
   each item in list
      li #{item}

会输出

<ul>
   <li> Item 1 </li>
   <li> item 2 </li>
   <li> item 3.....
...
</ul>

但我希望第一个项目的显示方式与其他项目不同,如下所示:

<ul>
   <li> Item 1: First Item in list! </li>
   <li> item 2 </li>
   <li> item 3.....
...
</ul>

那么有没有人知道一种方法来抵消 Jade 中的“每个”语句,以便我可以单独渲染第一个项目,然后从第二个索引开始渲染每个后续项目?

【问题讨论】:

    标签: node.js foreach express template-engine pug


    【解决方案1】:
    each item, i in list
      li= item
      if i === 1
        | : First item in list!
    

    【讨论】:

    • 谢谢!我最终使用 if - else 以不同方式显示第一项(我使用的是部分,而不是我给出的确切示例)。此外,我必须让 i === 0 才能获得第一项。非常感谢!
    • @Jackie 查看我对当前解决方案和示例的回答。
    【解决方案2】:

    如果@Johnathan 的回答对您不起作用: 在 Jade 1.7 中,以下工作:

    for item, i in list
        li= item
        if i === 0
            | : First item in list!
    

    http://www.learnjade.com/tour/iteration/

    还要注意 0 索引与 1 索引。

    【讨论】:

      猜你喜欢
      • 2013-07-22
      • 1970-01-01
      • 2011-11-14
      • 2011-06-26
      • 2017-12-21
      • 2013-03-14
      • 2016-04-05
      • 1970-01-01
      • 2012-09-04
      相关资源
      最近更新 更多