ejs预先定义好 数据---将数据注入到模板中->|编译 带有数据的html页面
标准的json字符串外面必须是单引号javascript
编译ejs模板文件命令css
用jQuery或原生js将如下用户信息显到网页表格中
userList = [{"username":"Alice",classNo:"1001","age":20},
{"username":"Tom",classNo:"1002","age":22},
{"username":"Jhon",classNo:"1001","age":19},
{"username":"Mary",classNo:"1003","age":21},
{"username":"Jerry",classNo:"1002","age":18},
{"username":"Jenny",classNo:"1004","age":22}]html
ejs-cli -f "index.ejs" -o "../dist" -O '{"title":"Hello wrold"}'java
$ ejs-cli -f ./injector02.ejs -o ../dist -O '{"name":"Alice","age":15}'
<%= username %> 特殊字符将进行转义
web
<%- myHtml %> 变量直接输出,不作转义处理
数据库
<h1 style="<%= style %>"></h1>
express
<ul> <% for(var i in users){ %> <li><%= users[i].username %>--<%= users[i].age %></li> <% } %> </ul>
.ejs
npm
<!-- 定义一组数组 --> <% users=["Jack","Rose","Alice","Ave"] %> <ul> <% for(var item in users){ %> <li> <%= users[item] %> </li> <% } %> </ul>
服务台
json
$ ejs-cli -f for.ejs -o ../dist
服务台运行以后自动出现html
数组
<!-- 定义一组数组 --> <ul> <li> Jack </li> <li> Rose </li> <li> Alice </li> <li> Ave </li> </ul>
<% if(isLogin){ %> <p><a href="#">Jerry</a> | <a href="#">退出</a></p> <% }else{ %> <p><a href="#">登陆</a> | <a href="#">注册</a></p> <% } %>
.ejs
<!-- 将全部条件判断代码放<% %>里面便可 --> <% if(isLogin){ %> <div class="user"> <a href="">Jack</a> <a href="">退出</a> </div> <% }else{ %> <div class="login"> <a href="">登陆</a> <a href="">注册</a> </div> <% } %>
例
新建文件 head.ejs <meta charset="utf-8"/> <title><%= title %></title> <link rel="styleSheet" type="text/css" href="/css/index.css" /> header.ejs <nav> <li>item-one</li> <li>item-two</li> <li>itm-three</li> </nav> footer.ejs <p>powered by Node.js Author:Jessco 215668636lai@gmail.com</p> index.ejs <!DOCTYPE html> <html lang="en"> <head> <% include ./head %> </head> <body> <main> <% include ./header %> <div>main content</div> <% include ./footer %> </main> </body> </html>
cnpm install express -generator -g
-e 模板名称(使用的模板类型) projectName 项目
cd projectName
-e 表明ejs模板 -pug 表明pug模板
app.use(session,({ secret:"aaa", resave:false, saveUninitialized:true, cookie:{ secure:false,maxAge:1000*60*60 }//cookie保存的时间值 }))
if(req.session.times){ req.session.times++; }else{ req.session.times=1; //判断出若是用户是第一次访问,则在req.session对象上添加times属性 }//假如用户第一次访问的时候req.session.times值为undefined
让res.render都有{isLogin:true,username:""}
var app=express() app.use(function(req,res,next){ res.locals={isLogin:true,username:""} })