express-11-ejs

一、ejs:模板語言,通過數據和模板,生成html標記文本

二、下載:進入項目目錄 npm install ejs(@1.0.0)

三、成員函數:

Render(str,data,[option]):直接渲染字符串生成HTML

Compile(str,[option]):編譯字符串得到模板函數

option:

Cache[boolean]:是否緩存,需要filename

Filename[string]:緩存名稱

Context[object]:執行上下文函數

compileDebug[boolean]:表示是否編譯debug

Client[boolean]:表示是否在客戶端執行

Delimiter[string]:表示是否設置debug狀態

_with[boolean]:是否使用”with(){}“函數

四、常用標籤

<% %>流程控制標籤

<%= %>輸出標籤(原文輸出HTML標籤)

<%- %>輸出標籤(HTML會被瀏覽器解析)ps 可遭惡意攻擊

<%# %>註釋標籤

%對標記轉義

-%>去掉沒用的空格

五、客戶端使用

六、服務端使用

views:當前視圖所在的目錄

view cache:當前視圖緩存

view engine: 視圖引擎 ejs/jade

app.get("/ejs1",function(req,res){

res.render("ejs1.ejs",{templateObj:templateObj})

})

var ejs2 = require("ejs2");


app.get("/ejs2",function(req,res){

ejs2.delimiter = "$";

var template = fs.readFileSync("./public/views/ejs2.ejs","utf-8");

var html = ejs2.render(template,{templateObj:templateObj},{cache:true,client:true,debug:true,_with:false,filename:'ejs2.ejs'})

})

七、過濾器<%=:   |:%>,可鏈式使用(注意:有:號,只有ejs1可用過濾器)

如<%=: templateObj.data.age|plus:5%>

對數字操作,字符串操作,數組操作,對象操作

plus、minus、times...

八、導入include

 











發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章