2012-04-04 13 views
10

¿Hay alguna forma de compensar la iteración de cada iteración cuando se utiliza el motor de plantillas de Jade?Motor de plantilla de jade: cada desplazamiento de iteración

por ejemplo, al pasar en el objeto de lista con nombre:

ul 
    each item in list 
     li #{item} 

salida se

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

pero quiero que el primer elemento que se muestra de forma diferente que el resto de los artículos, como por lo :

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

Así que, ¿alguien sabe una forma de compensar el enunciado 'cada' en Jade para que pueda deshacerse ¿Es el primer elemento por separado y luego muestra cada elemento siguiente comenzando en el segundo índice?

Respuesta

21
each item, i in list 
    li= item 
    if i === 1 
    | : First item in list! 
+2

Gracias! Terminé usando if - else para mostrar el primer elemento de manera diferente (estoy usando parciales, no el ejemplo exacto que di). Además, tuve que hacer que i === 0 para obtener el primer artículo. ¡Muchas gracias! –

+2

Oops se olvidó de esa lol –

+0

No funciona actualmente con Jade4J :-( – Jackie

2

Si @ respuesta de Johnathan no funciona para usted: En Jade 1.7 las siguientes obras:

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

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

También tenga en cuenta el índice de 0 vs 1 índice.

Cuestiones relacionadas