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 code
    
  • altrimenti se (dichiarazione)

    // Pug code
    
  • altro

    // Pug code
    
  • a 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

Documentazione ufficiale PugJS su condizionali

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.



Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow