玉内联条件

Ben*_*eys 33 node.js pug

我试图使数组中的第一个元素与使用Jade模板引擎的CSS类分开.

我希望我能这样做,但没有运气.有什么建议?

- each sense, i in entry.senses
  div(class="span13 #{ if (i != 0) 'offset3' }")
    ... a tonne of subsequent stuff
Run Code Online (Sandbox Code Playgroud)

我知道我可以将代码包装如下,但据我了解Jade的嵌套规则,我必须复制代码或将其提取到Mixin或其他东西.

- each sense, i in entry.senses
  - if (i == 0)
    .span13
      ... a tonne of subsequent stuff
  - else
    .span13.offset3
      ... identical subsequent stuff
Run Code Online (Sandbox Code Playgroud)

有没有更好的方法呢?

cti*_*ide 46

你可以这样做:

- each sense, i in entry.senses
  - var klass = (i === 0 ? 'span13' : 'span13 offset3')
  div(class=klass)
    ... a tonne of subsequent stuff
Run Code Online (Sandbox Code Playgroud)


Mik*_*ser 25

这也有效:

div(class=(i===0 ? 'span13' : 'span13 offset3'))
Run Code Online (Sandbox Code Playgroud)


小智 20

这也有效:

div(class="#{i===0 ? 'span13' : 'span13 offset3'}")
Run Code Online (Sandbox Code Playgroud)