Loop in Jade (attualmente noto come motore di template “Pug”)

Voglio usare un ciclo semplice come for(int i=0; i<10; i++){} .

Come lo uso nel motore Jade? Sto lavorando con Node.js e utilizzo il framework expressjs.

per esempio:

 - for (var i = 0; i < 10; ++i) { li= array[i] - } 

è ansible vedere https://github.com/visionmedia/jade per il documento dettagliato.

Usando il nodo ho una raccolta di cose @stuff e l’accesso in questo modo:

 - each stuff in stuffs p = stuff.sentence 

Un modo insolito ma carino per farlo

Senza indice :

 each _ in Array(5) = 'a' 

aaaaa : aaaaa

Con indice :

 each _, i in Array(5) = i 

01234 : 01234

Note : Negli esempi precedenti, ho assegnato il parametro val di each syntax di iterazione di jade a _ perché è richiesto, ma ritornerà sempre undefined .

Ecco un file di jade molto semplice che contiene un ciclo. Jade è molto sensibile allo spazio bianco. Dopo la linea di definizione del ciclo ( for ) si dovrebbe dare un indent (tab) a cose che vogliono andare all’interno del ciclo. Puoi farlo senza {} :

 - var arr=['one', 'two', 'three']; - var s = 'string'; doctype html html head body section= s - for (var i=0; i<3; i++) div= arr[i] 

Solo aggiungendo un’altra possibilità in quanto potrebbe aiutare qualcuno che sta provando ad eseguire iterazioni su un array e a mantenere un conteggio. Ad esempio, il codice seguente passa attraverso un array chiamato items e visualizza solo i primi 3 elementi. Si noti che each e la if sono native jade e non hanno bisogno di un trattino.

 ul - var count = 0; each item in items if count < 3 li= item.name - count++; 

Potresti anche velocizzare le cose con un ciclo while (vedi qui: http://jsperf.com/javascript-while-vs-for-loops ). Anche molto più conciso e leggibile IMHO:

 i = 10 while(i--) //- iterate here div= i 

Pug (rinominato da “Jade”) è un motore di template per lo sviluppo di app web complete. Fornisce una syntax chiara e pulita per la scrittura di HTML e mantiene uno stretto rientro degli spazi bianchi (come Python). È stato implementato con le API JavaScript. Il linguaggio supporta principalmente due costrutti di iterazione: ogni volta. ‘for’ può essere usato invece ‘each’. Si prega di consultare la lingua di riferimento qui:

https://pugjs.org/language/iteration.html

Ecco uno dei miei frammenti: ciascuno / per l’iterazione in pug_screenshot