header.ejs 和 footer.ejs 无法正常运行
Posted
技术标签:
【中文标题】header.ejs 和 footer.ejs 无法正常运行【英文标题】:header.ejs and footer.ejs not functioning properly 【发布时间】:2019-03-10 05:33:03 【问题描述】:美好的一天! 我正在制作一个应用程序,其中我有各种路线。我正在使用 node.js。我创建了一个“partials”目录,其中包含 header.ejs 和 footer.ejs 文件,其中包含所有页眉和页脚信息,例如引导程序、自定义 css 等。 现在,这个头文件工作正常,它也正确链接,我已经通过将背景颜色更改为完全红色来测试它,然后这种颜色适用于包含 和 。 在我的项目中,问题是引导程序和其他自定义 css 仅适用于根路由。例如这是主目录(Project),这个目录包含(Project/app.js、Project/package.json、Project/views、Project/public等...)。 Project/views 包含所有路由的 ejs 文件。例如路线“/cars/toyota”的toyota.ejs文件,路线“/cars/honda”的honda.ejs文件等等。所有这些 ejs 文件都存储在 Project/views 文件夹中。在主目录中,除了 app.js,还有一个名为“landing.ejs”的登录页面,用于路由“/cars”。页眉和页脚对于呈现“landing.ejs”的路线“/cars”非常有效,但是当我转到不同的路线时,例如“/cars/toyota”,它将从views文件夹呈现“toyota.ejs”,页眉和页脚停止工作,仅某些功能有效,例如引导按钮或某些自定义样式。 我的意思是 header.ejs 和 footer.ejs 只适用于根路由,即“/”,主汽车路由“/cars”,显示所有汽车制造公司。仅当我尝试使用从“项目/视图”文件夹中呈现文件的路由时才会出现问题。 header.ejs 和 footer.ejs 属性不会应用于嵌套文件夹中包含的文件,这称为“视图”。链接工作正常,因为我尝试更改背景颜色。
【问题讨论】:
欢迎来到 SO。您需要正确格式化您的问题并在此处分享最少和相关的代码以便更好地接收 ***.com/questions/5813771/… 请参考这个问题@haseeb 【参考方案1】:在 header.ejs 文件中,在 href 中的 css 文件名前添加一个“/”。 例如,替换:
<link rel="stylesheet" type="text/css" href="car.css">.
与:
<link rel="stylesheet" type="text/css" href="/car.css">.
【讨论】:
【参考方案2】:你能把你的代码贴到这里吗?
你可以试试这个:
<%- include('filepath/header.ejs') %>
【讨论】:
好的,这就是我将其更改为 和 footer.ejs 的页脚相同,但我得到一个错误作为回报是:- 错误:找不到包含文件“('/alm/views/partials/header.ejs')”。我复制的文件路径是正确的。仍然有问题。 使用相对路径。如果您的应用程序文件夹是“alm”,您应该使用 我试过了。同样的错误。我只想提请您注意,我之前的 include 语句也仅在我稍微更改路线时才有效。这个网站是一个汽车网站。首先我有根路由,即“/”。它从视图中渲染“landing.ejs”。第二条路线是“/cars”,显示所有品牌的汽车。我的页眉和页脚对这两个路由都很好,记住landing.ejs 文件和app.js 一起在根目录中,它不在其他ejs 文件的视图中。 第三,我有“/cars/toyota”,它将从视图中渲染 toyota.ejs。这就是问题开始的地方。我有很多这样的路线,“/cars/honda/detail”和“/cars/bmw/inspection”等等。这就是我发现这个页眉和页脚问题的地方。现在,如果我编辑这些路线并将其更改为以下路线,那么它工作得非常好,我不需要更改我的页眉和页脚标签,更改是“/toyota”而不是“/cars/toyota”或“/details”不是“/cars/honda/details” 或 “/inspection” 而不是 “/cars/bmw/inspection” 我希望你明白我的意思。皇家困惑。 @Robert.T 我不认为你的解决方案有效,我想你会从这个问题中找到更多的答案和解决方案(***.com/questions/5813771/…)以上是关于header.ejs 和 footer.ejs 无法正常运行的主要内容,如果未能解决你的问题,请参考以下文章
Mongo find() 在 express 中返回 [object Object]