內插

Pug 提供各種內插需求的運算子。

字串內插,已轉譯

考慮以下範本的區域變數放置:titleauthortheGreat

title 遵循評估範本區域變數的基本模式,但 #{} 之間的程式碼會經過評估、轉譯,並將結果緩衝到要呈現的範本輸出中。

這可以是任何有效的 Javascript 表達式,因此您可以盡情發揮。

Pug 足夠聰明,可以找出表達式結束的位置,因此您甚至可以包含 } 而不用轉譯。

如果您需要包含逐字的 #{,您可以轉譯它,或使用內插。(這麼後設!)

字串內插,未轉譯

不必小心謹慎。您也可以將未轉譯的值緩衝到您的範本中。

注意

請記住,如果未轉譯的內容來自您的使用者,將其緩衝到您的範本中可能會非常危險。絕不要信任使用者的輸入!

標籤內插

內插不僅適用於 JavaScript 值,也適用於 Pug。只要使用標籤內插語法,如下所示

您也可以透過在 Pug 中內嵌 HTML 標籤來達成相同的目的…但這樣寫 Pug 的意義何在?將內嵌 Pug 標籤宣告包在 #[] 中,它就會經過評估並緩衝到其包含標籤的內容中。

空白控制

標籤內插語法對於內嵌標籤特別有用,其中標籤前後的空白很重要。

不過,Pug 預設會移除標籤前後的所有空白。查看以下範例

請參閱純文字頁面中的空白區段,以進一步討論此主題。