Pug 代碼 Code

2020-02-07 16:36 更新

代碼 Code

Pug 為您在模板中嵌入 JavaScript 提供了可能。這里有三種類型的代碼。

不輸出的代碼

用 - 開始一段不直接進行輸出的代碼,比如:

- for (var x = 0; x < 3; x++)
  li item

 渲染后:

<li>item</li>
<li>item</li>
<li>item</li>

Pug 也支持把它們寫成一個塊的形式:

-
  var list = ["Uno", "Dos", "Tres",
          "Cuatro", "Cinco", "Seis"]
each item in list
  li= item

渲染后:

<li>Uno</li>
<li>Dos</li>
<li>Tres</li>
<li>Cuatro</li>
<li>Cinco</li>
<li>Seis</li>

帶輸出的代碼

用 = 開始一段帶有輸出的代碼,它應(yīng)該是可以被求值的一個 JavaScript 表達式。為安全起見,它將被 HTML 轉(zhuǎn)義:

p
  = '這個代碼被 <轉(zhuǎn)義> 了!'

渲染后:

<p>這個代碼被 &lt;轉(zhuǎn)義&gt; 了!</p>

也可以寫成行內(nèi)形式,同樣也支持所有的 JavaScript 表達式:

p= '這個代碼被 <轉(zhuǎn)義> 了!'

渲染后:

<p>這個代碼被 &lt;轉(zhuǎn)義&gt; 了!</p>

不轉(zhuǎn)義的、帶輸出的代碼

用 != 開始一段不轉(zhuǎn)義的,帶有輸出的代碼。這將不會做任何轉(zhuǎn)義,所以用于執(zhí)行用戶的輸入將會不安全:

p
  != '這段文字 <strong>沒有</strong> 被轉(zhuǎn)義!'

渲染后:

<p>這段文字 <strong>沒有</strong> 被轉(zhuǎn)義!</p>

同樣也可以寫成行內(nèi)形式,支持所有的 JavaScript 表達式:

p!= '這段文字' + ' <strong>沒有</strong> 被轉(zhuǎn)義!'

渲染后:

<p>這段文字 <strong>沒有</strong> 被轉(zhuǎn)義!</p>
危險

不轉(zhuǎn)義的輸出可能是危險的,您必須確保任何來自用戶的輸入都是安全可靠的,以防止發(fā)生跨站腳本攻擊(XSS)。



以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號