在express3里用ejs模版引擎时,如何使其支持'.html'后缀

Posted ESnail

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在express3里用ejs模版引擎时,如何使其支持'.html'后缀相关的知识,希望对你有一定的参考价值。

①express 默认jade模板,改为ejs模板,需执行以下命令:

  express -e --ejs

②在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’),否则会报错。

参考资料:Render ejs with express

需要注意的是,用这种方法在实现模版嵌套的时候,还是需要加后缀。比如在index.html里面引用header.html :

<% include header.html %>

这里如果省略了 .html ,还是会报错。

以上是关于在express3里用ejs模版引擎时,如何使其支持'.html'后缀的主要内容,如果未能解决你的问题,请参考以下文章

11 Express安装入门与模版引擎ejs

nodejs学习笔记--Express下安装模版引擎ejs

ejs

node08---EJS模版

小白学react之EJS模版实战

nodejs创建ejs工程