express-11-ejs

来源:互联网 发布:泳装视频网络歌曲 编辑:程序博客网 时间:2024/05/04 13:42

一、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