在app.js中,将
app.set('view engine', 'jade');
替换为
app.engine('.html', require('ejs').__express);
app.set('view engine', 'html');
就可以了。
其中第一句是让ejs能够识别后缀为’.html’的文件,app.engine 相当于 express2 中的 app.register 。
第二句是使在调用render函数时能自动为我们加上’.html’ 后缀。如果没有第二句,我们就得把res.render(‘users’)写成res.render(‘users.html’),否则会报错。
需要注意的是,用这种方法在实现模版嵌套的时候,还是需要加后缀。比如在index.html里面引用header.html :
<% include header.html %>
这里如果省略了 .html ,还是会报错。
这个是新版本express的写法,Express迭代太快,比较痛苦
恩,比较实用啊 sublime编辑器没法识别ejs文件,正蛋疼呢
编辑器右下角,点击弹出小窗口,选择html,支持html语法。ejs语法也就<%%>,你添加个代码片段就可以了
@taohaoge活到老学到老,多谢,嘿嘿
@alsotang好的 我试试
@alsotang 谢谢,关于ejs的代码提示,我自己整了一个ejs及express的小插件,现在还不会github,所以传到百度云盘上给大家分享 http://pan.baidu.com/s/1b6bAQ ejs的快捷键 %% =% -% include%
将两个文件传到Packages目录下 注意选择html才能自动完成