node.js ejs的视图模块引擎
生活随笔
收集整理的這篇文章主要介紹了
node.js ejs的视图模块引擎
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一、版本升級
???Express從2.0升級到3.0,將ejs的用法忽略,改為用戶自定義形式。 引入ejs/index.js的模塊,來支持ejs的模版引擎二、引入引擎的模塊,然后在app中調用engine函數改造ejs引擎
app.engine('ejs', engine); 將layout.ejs設置成默認的布局模版 app.locals._layoutFile='layout' 三、如果項目分前后臺,那么只有一個布局模版,怎么辦?????????res.render('pcat',{_layoutFile:'pcatlayout'});//調用模版引擎的時候指定模版
四、片段視圖
Express的視圖系統還支持片段視圖,它就是一個頁面的片段,通常是重復的內容,用于迭代顯示,通過它你可以將相對獨立的頁面塊分割出去,而且可以避免顯示的使用for循環。 partial是一個可以在視圖中使用的函數,它接受兩個參數,第一個是片段視圖的名稱,第二個可以是一個對象或一個數組,如果是一個對象,那么片段視圖上下文變量引用的就是這個變量,如果是一個數組,那么其中每個元素一次被迭代應用到片段視圖。片段視圖中上下文變量名就是視圖文件名。 list.ejs?? listitem.ejs???五、視圖助手。
允許在視圖中訪問一個全局的函數或對象,不用每次調用視圖解析的時候單獨傳入, 視圖助手分為兩類,分別是靜態視圖助手和動態視圖助手,這兩者的差別在于,靜態視圖注助手可以是任何類型的對象,包括接受任意參數的函數,但訪問到的對象必須是用戶請求無關的。而動態視圖助手只能是一個函數。這個函數不能接受任何參數,但是可以訪問req和res兩個對象。????????靜態視圖助手:????????????????
app.locals({ inspect:function(obj){ return util.inspect(obj,true)+"??? 解析成功"; } })????????動態視圖助手:
res.locals({ headers:function(req,res){ return req.headers; } }) 創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的node.js ejs的视图模块引擎的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: socket网络编程实现远程备份
- 下一篇: 最简逆波兰模板