【问题标题】:ejs - include a file from a subfolder fileejs - 包含子文件夹文件中的文件
【发布时间】:2018-01-02 18:28:06
【问题描述】:

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

所以如果我在views 文件夹中有一个文件,比如index.ejs,我可以很容易地包含来自_layouts 的文件,例如

<% include _layouts/header %>

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

我试过&lt;% include _layouts/admin_header %&gt;&lt;% include ../_layouts/admin_header %&gt;

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

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

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

【问题讨论】:

  • 试试这个
  • 我做到了,但我希望我没有。你不能发布你没有测试过并且真的不知道的答案吗?
  • 我同意我没有测试过你的代码,但是你在这个中遇到的错误是什么?
  • 阅读文档here 你的答案在includes 中。还要遵守规则here 友善无济于事,尤其是当您需要帮助时@VojislavKovacevic
  • @Dennington-bear 谢谢,我在快速浏览时不知何故错过了它,无论如何并不意味着粗鲁,我只是认为答案在他不知道的情况下主题,但事实证明它几乎就在那里。

标签: node.js express ejs


【解决方案1】:

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

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

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

''

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-07-24
    • 1970-01-01
    • 2015-09-14
    • 1970-01-01
    • 2011-12-25
    • 2013-02-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多