2012-04-09 56 views
6

此問題與使用Jade templatesExpress.js有關。Jade模板中的`body!= body`是什麼意思?

我知道,當我寫layout.jade包含:

!!! 
html 
    body != body 
     header 
      h1 My header 

當我再調用res.render('index')我實際的模板呈現給body的開始。

我的問題是:!= body是什麼意思,以及Jade/Express如何使用它來確定我的模板在佈局中的位置?我知道,如果我在另一個元素中更改!= body,那麼實際視圖會在那裏呈現。有誰知道這個功能在哪裏被記錄? !

+1

想在這一個澄清爲好。在我心中。 – Hacknightly 2012-04-09 15:15:33

回答

7

我引用,從=緩衝玉的documentation/guide:

代碼默認情況下,出於安全逃了出來,但輸出轉義的回報,你可以使用值=:

P = aVarContainingMoreHTML

當使用res.render('index')index.jade(在yo你的情況)將作爲局部變量傳遞給你的佈局文件(layout.jade)。本地變量可用作主體。但是,如果我們僅輸出本體變量,則將轉義爲(特殊字符將被編碼)。因此,通過使用!=,主體的內容將被輸出未轉義的

退房:http://expressjs.com/guide.html#view-rendering

+0

太棒了!只是我正在尋找的答案,但從文檔中不是很明顯。 – jsalonen 2012-04-09 15:27:01

相關問題