pug
Condizionali
Ricerca…
introduzione
Pug può eseguire in modo condizionale codice basato su variabili (passato dal tuo server o basato su Pug stesso).
Sintassi
se (dichiarazione)
// Pug codealtrimenti se (dichiarazione)
// Pug codealtro
// Pug codea meno che (dichiarazione)
// Pug code
Parametri
| Parametro | Dettagli |
|---|---|
| se (dichiarazione) | Valuta la statement per vedere se restituisce vero o falso. Il codice annidato sotto if verrà eseguito solo se l' statement restituisce true. |
| altrimenti se (dichiarazione) | Incatenato a un'istruzione if or else if ; funziona solo se l'istruzione precedente è stata valutata come falsa. Il codice annidato sotto l'istruzione else if verrà eseguito solo se l' statement restituisce true. |
| altro | Il codice annidato sotto l'istruzione else verrà eseguito solo se tutte le dichiarazioni precedenti hanno restituito false. |
| a meno che (dichiarazione) | La negazione di if (statement) ; il codice annidato sotto if verrà eseguito solo se l' statement restituisce false. È lo stesso di if (!statement) . |
Osservazioni
Se / Else Statement in Pug
I condizionali in Pug possono valutare le dichiarazioni in modo simile a JavaScript. Puoi valutare le variabili create in Pug o quelle passate dal tuo percorso ( res.render , pug.renderFile , ecc.).
index.js
var authorized = true
res.render("index", {
authorized: authorized
});
index.pug
- var showLogin = false;
if authorized && showLogin === true
.welcome Welcome back to our website!
else
.login
a(href="/login") Login
index.pug output
<div class="login"><a href="/login">Login</a></div>
Se / Else Statement in Pug (con un trattino)
È possibile scegliere di anteporre un operatore if o else con un trattino, ma non è necessario. Avrai bisogno di racchiudere l'istruzione tra parentesi, anche se (se ometti un trattino, non hai bisogno di parentesi).
- var showLogin = false;
- if (showLogin === true)
.welcome Welcome back to our website!
- else
.login
a(href="/login") Login
index.pug output
<div class="login"><a href="/login">Login</a></div>
Altro se dichiarazione
È possibile concatenare un numero qualsiasi di else if istruzioni if un'istruzione if esistente, per valutare una sequenza di istruzioni.
index.pug
- var page = 60;
if page => 52
h1 Lots of numbers!
else if page > 26 && page < 52
h1 A few numbers
else
h1 Not a lot of numbers
index.pug output
<h1>Lots of numbers!</h1>
A meno che l'operatore
unless sia l'operazione inversa di if in Pug. È analogo a if !(statement) .
index.pug
- var likesCookies = true;
unless likesCookies === true
h2 You don't like cookies :(
else
h2 You like cookies!
index.pug output
<h1>You like cookies!</h1>
Nota : a else unless istruzioni non funzionino a unless ; puoi associare else if istruzione else if un'istruzione a unless che, a else unless che non funzioni.