javascript - 如何在 EJS 中包含内容?
问题描述
我在(我认为)应该很简单的事情上遇到了一些麻烦。我的网络应用程序是Node.js
一个带有express
and的应用程序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"
解决方案
删除“..”和“.ejs”,同时确保“/partials/Utils/”在公共文件夹中
<% include /partials/Utils %>
推荐阅读
- excel - 用 VBA 插值
- c# - 为操作系统 Cosmos C# 创建安装程序
- arrays - 是否有一个 C 函数,给定具有不同数据类型的结构数组,可以使用任何一种数据类型对数组进行排序
- asp.net-mvc - 如何在 mvc 中为日期设置初始值?
- powerbi - 根据过滤器选择更改矩阵的列名
- ios - Airplay 不能与 Swift 的 AVRoutePicker 一起使用,但可以与 Objective C 一起使用
- r - 使用完整的 NA 填充组,使其长度与最大组相同
- linux - 使用 Qt 创建的 AppImage 和带有 gtk3 插件的 linuxdeployqt 无法在 Gnome 4 上启动
- sql - 将sql中的数据格式化为一行
- python - urlunparse 与 urlparse 不一致