node.js – 使用html的Ejs引擎无法正常工作

我使用的是html文件而不是ejs,但快递引擎是ejs

views
|
|--header.html
|--footer.html
|
|--index.html

我配置像

app.set('views',__dirname + '/views');
app.engine('html',require('ejs').renderFile);

我通过这个渲染我的索引模板:

res.render('index.html',{title: 'test'});

但是我如何在index.html中包含header和footer.html

类似帖子
Node.js express: confuse about ejs template

现有的例子不起作用
https://github.com/visionmedia/express/tree/master/examples/ejs

解决方法

你问的原始方法是使用partials.部分已被删除,并替换为EJS的包含功能.这是你如何包含一个文件

<% include header.html %>
<% include footer.html %>

您传递给渲染页面的任何本地人也将被传递给包含.例如:

app.js

app.get('/',function(req,res) {
  res.render(__dirname + '/index.html',{
    string: 'random_value',other: 'value'
  });
});

的index.html

<!DOCTYPE html>
<body>
  <%= other %>
  <% include content.html %>
</body>

content.html

<pre><%= string %></pre>

你得到的结果是:

<!DOCTYPE html>
<body>
  value
  <pre>random_value</pre>
</body>

相关文章

这篇文章主要介绍“基于nodejs的ssh2怎么实现自动化部署”的...
本文小编为大家详细介绍“nodejs怎么实现目录不存在自动创建...
这篇“如何把nodejs数据传到前端”文章的知识点大部分人都不...
本文小编为大家详细介绍“nodejs如何实现定时删除文件”,内...
这篇文章主要讲解了“nodejs安装模块卡住不动怎么解决”,文...
今天小编给大家分享一下如何检测nodejs有没有安装成功的相关...