サーチ…


前書き

Pugは、条件に基づいて(あなたのサーバから渡された変数またはPug自体に基づく)変数に基づいてコードを実行できます。

構文

  • if(ステートメント)

    // Pug code
    
  • else if(ステートメント)

    // Pug code
    
  • else

    // Pug code
    
  • ただし、(文)

    // Pug code
    

パラメーター

パラメータ詳細
if(ステートメント) statementを評価して、trueまたはfalseを返すかどうかを確認します。 if下にネストされたコードは、 statementがtrue statement返す場合にのみ実行されます。
else if(ステートメント) 既存のチェーンifまたはelse if陳述。直前のステートメントがfalseと評価された場合にのみ実行されます。コードは下にネストされてelse if文は場合にのみ実行されるstatement真と評価されます。
else else文の下にネストされたコードは、前のすべての文がfalseを返した場合にのみ実行されます。
ただし、(文) if (statement)の否定。 if下にネストされたコードは、 statementがfalse statement返す場合にのみ実行されます。 if (!statement)と同じです。

備考

条件文に関するPugJSの公式文書

Pugの/ Elseステートメント

Pugの条件式は、JavaScriptと同様に文を評価することができます。 Pugで作成された変数や、あなたのルート( res.renderpug.renderFileなど)によって渡された変数を評価することができます。

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の出力

<div class="login"><a href="/login">Login</a></div>

もし/ Else Statement in Pug(ダッシュ付き)

あなたは先頭に追加するかを選択することができますif 、またはelseダッシュをオペレータに、それは必要ありません。ステートメントをカッコで囲む必要があります(ダッシュを省略するとカッコは不要)。

- var showLogin = false;
- if (showLogin === true)
    .welcome Welcome back to our website!
- else
    .login
        a(href="/login") Login

index.pugの出力

<div class="login"><a href="/login">Login</a></div>

Else Ifステートメント

既存のif文に任意の数のelse if文を連結して、一連の文を評価することができます。

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の出力

<h1>Lots of numbers!</h1>

オペレータ

unlessの逆の操作であるifパグインチこれはif !(statement)と似ています。

index.pug

- var likesCookies = true;
unless likesCookies === true
    h2 You don't like cookies :(
else
    h2 You like cookies!

index.pugの出力

<h1>You like cookies!</h1>

else unless文が動作しunless 、あなたは、チェーンできるelse ifに声明unless声明が、 else unless動作しません。



Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow