首页 > 解决方案 > 如何在 EJS 中包含内容?

问题描述

我在(我认为)应该很简单的事情上遇到了一些麻烦。我的网络应用程序是Node.js一个带有expressand的应用程序ejs

我在 index.js 中包含这样的代码(在这种情况下非常经典):

var app = express();

app.use('/public', express.static(path.join(__dirname, '/public')));
app.set('port', (process.env.PORT || 5000));
app.use(express.static(__dirname + '/public'));
app.set('views', __dirname + '/views');
app.set('view engine', 'ejs');

现在这是我遇到的问题。

在我所有的 .ejs 文件中,有些恰好需要相同的代码(由我编写)。为了避免重复,我想将此代码放在一个单独的文件中,然后在必要时包含它,但我找不到正确的方法。我将代码放在一个名为 Utils.ejs 的文件中(在 partials 文件夹中),然后使用它:

<% include ../partials/Utils.ejs %>

但它不起作用。然后我在网上搜索并尝试了一些变化,但没有发现任何工作。

有谁知道我该怎么做?

有关版本的信息,这是我的 package.json 文件中的内容:

"ejs": "^2.5.7",
"express": "~4.11.x",
"node": ">=4.3"

在此处输入图像描述

标签: javascriptnode.jsexpressejs

解决方案


删除“..”和“.ejs”,同时确保“/partials/Utils/”在公共文件夹中

<% include /partials/Utils %>

推荐阅读