1.安装 express-partials
。
方法一:运行 cmd 用 npm install express-partials
方法二:在 package.json
里面的 dependencies
添加 "express-partials": "*"
。然后运行 cmd 并切换至项目目录运行 npm install
获得最新版。
app.js
里面引用express-partials
。 步骤一:添加引用var partials = require('express-partials');
步骤二:在app.set('view engine', 'ejs');
下面添加app.use(partials());
3.在需要引用模板的地方调用 layout:'模版名称'
示例
app.get('/reg', function (req, res) {
res.render('reg', {
title: '用户注册',
layout: 'template'
});
});
LZ资料哪里找的,我找了半天没找到ejs官网打不开 jade语法又那么蛋疼愁死了。ejs在这么不给力只好转jade了
我也是用楼主的方法,才行的。
include方法也挺不错的
express 2升级到3的注意事项和替代方案:
https://github.com/visionmedia/express/wiki/Migrating-from-2.x-to-3.x
视图类可以看下 View system changes 那一段
To get back layout functionality with EJS you can use express-partials or ejs-locals.
Enjoy~
怎么感觉升到3了之后怪事一大堆呢。
现在layout是有了,请问ejs有没有类似jade的mixin方法,我只用过include path
但是没有办法传值?有什么解决办法么?
我运行npm install express-partials时出错,请教一下怎么解决?
而且用第二种方法时,它报错说install couldn’t read dependencies,这是问什么啊?
res.render('index', {
layout: '', // 如果不指定 默认就会使用layout.ejs 作为默认布局文件
title: '首页',
posts: posts,
});
感谢楼主。