微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐