先看一下要实现的效果
要实现上面的效果,分以下几个步骤:
步骤1:
按express3.x_01中的方式使用ejs的layout模板,用法:http://blog.csdn.net/u013310075/article/details/20313059
步骤2:
2.1在app.js中调用userlist路由
app.get('/userlist',routes.userlist);
2.2在routes/userlist.js中添加如下代码
exports.userlist = function(req, res) {
res.render('list',{
items:[1988,'David','birthday','HelloWorld'],
,layout:'userlistLayout' //调用到userlistLayout.ejs模板
});
};
2.3在views/userlistLayoute.ejs中添加如下代码
<%- partial('listitem', items) %> //第一个参数是传递给views/list.ejs的变量,第二个变量是routes/userlist.js中传递过来的数组
2.4在最终的页面(views/list.ejs),该页面会被加载到userlistLayout.ejs中,也就是说路由会先调用模板userlistLayout.ejs,然后在调用list.ejs并把它加入到前者中
//在views/list.ejs中这样写
<%= listitem %>