当前项目中需要使用的模板引擎,对我们前端来说基本没有学习成本,就是js 和html+css
1.安装
npm i ejs --save
2.设置模板引擎和目录
view engine 是固定固定的字符串
Views 也是固定的字符串
app.set('view engine','ejs');app.set('views',path.join(__dirname,'views'))
3.使用
要把ejs显示出来,就必须通过路由的render方法
app.get('/test2',function(req,res){res.render('test2')})
render方法
参数1:模板名称, 会自行去模板目录里面找名字相同的文件
参数2: 需要返回到模板里面数据
app.get('/test1',function(req,res){res.render('test1',{name:'young',age:'<h2>18</h2>',login:false,arr:[{name:'yy1',age:18},{name:'yy2',age:17},{name:'yy13',age:20},{name:'yy12',age:17}]})})
4.ejs标签
<%- %> 解析输出,会解析html
<%= %> 转义输出, 把html转换成字符串输出
<%%> 脚本标签 ,可以用控制显示或者循环输出
控制显示
<div><% if(login){ %><span>young</span><span>发表文章</span><span>退出</span><% }else{ %><span>登录</span><span>注册</span><%}%></div>
循环输出
<div><ul><% for(var i=0; i<arr.length; i++){ %><li><%= arr[i].name %> -<%= arr[i].age %> </li><% } %></ul></div>
5.include 包含
可以提取页面中的公共部分, 然后用include引进来
<%- include('header') %>
6.注意
在ejs页面中,需要引入的资源,都得放在静态目中!!
