1.在 app.js 中通过以下两个语句设置了 引擎类型 和页面模板的位置:
app.set('views', __dirname + '/views');
app.set('view engine', 'ejs');
2.调用模板引擎
res.render('index', { title: 'Express' });
res.render 的功能是调用模板引擎,并将其产生的页面直接返回给客户端。它接受两个参数,第一个是模板的名称,即 views 目录下的模板文件名,不包含文件的扩展名;第二个参数是传递给模板的数据,用于模板翻译。index.ejs 内容如下:
<h1><%= title %></h1>
<p>Welcome to <%= title %></p>
3.页面布局layout.ejs(Express 3.0.x 中不再支持,怎样兼容??)
<!DOCTYPE html>
<html>
<head>
<title><%= title %></title>
<link rel='stylesheet' href='/stylesheets/style.css' />
</head>
<body>
<%- body %>
</body>
</html>
以上是layout.ejs的内容, 是一个页面布局模板,它描述了整个页面的框架结构,默认情况下每个单独的
页面都继承自这个框架,替换掉 <%- body %> 部分。