gpt4 book ai didi

node.js - 带有html的Ejs引擎无法正常工作

转载 作者:搜寻专家 更新时间:2023-10-31 23:05:47 24 4
gpt4 key购买 nike

我正在使用 html 文件而不是 ejs,但是 express 引擎是 ejs

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

我的配置是这样的

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

我通过以下方式呈现我的 index 模板:

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 函数。这是包含文件的方式:

<% 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>

您将获得的结果 HTML 是:

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

关于node.js - 带有html的Ejs引擎无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18753620/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com