ejs - 包含子文件夹文件中的文件

时间:2017-07-27 07:13:37

标签: node.js express ejs

我的主模板文件夹是views。在其中我有另一个名为_layouts的文件夹,其中header.ejsadmin_header.ejs

所以如果我在views文件夹中有一个文件,比如说index.ejs,我就可以轻松地包含来自_layouts的文件。

<% include _layouts/header %>

但是现在我在名为admin的views文件夹中创建了另一个子文件夹,我有admin.ejs,但我不能再包含来自_layouts的文件了。

我已尝试<% include _layouts/admin_header %><% include ../_layouts/admin_header %>

在这两种情况下,我得到:

failed to open views\admin\_layouts\admin_header.ejs

有没有办法将_layouts中的文件包含在另一个子文件夹中的文件中?

1 个答案:

答案 0 :(得分:0)

也许您必须在路径文件中设置一些路径。试试这个,对我有用:

app.set('views', [path.join(__dirname, 'views'),
                  path.join(__dirname, 'views/your_another_folder/')]);

因此,在您的模板中,您可以调用您的文件,如下所示:

&#39;&lt;% - 包含partials / folter / file%&gt;&#39;