EJS为什么不接受包含的绝对路径?

问题描述 投票:-1回答:1

根据EJS github页面,EJS应该接受include文件的绝对路径,但对我而言不起作用。

所以这不起作用

<% include views/partials/global/header.ejs %> 

我只是收到错误说明找不到包含文件“ views / partials / global / header.ejs”

但这确实有效:

<% include ../../partials/global/header.ejs %>

如何启用它?这是Git提交,表示绝对路径应该有效https://github.com/tj/ejs/pull/157/commits

node.js express layout ejs template-engine
1个回答
0
投票

确定,现在我注意到了问题。

该提交未在主分支中合并,因此不在您下载的版本之内。这是一个“拉取请求”。这是某人编写的代码,但是没有放入存储库的主要源代码中。

带有该代码的实际存储库是“拉取请求”的来源,即:enter image description here因此,如果您需要该段代码,则应转到该存储库(只需单击此处),下载该存储库,然后手动将其放置在应有的位置。请注意,您将下载该版本的旧版本。

您可以同时获取差异,也可以手动编辑现在安装的文件,因此在合并此提交时,您可以保留最新的更改。这不是一件容易的事,因为发布5年后很多东西都可能被破坏(也许不是因为ejs是一个废弃的项目)。

另一种方法是使用git工具。下载主存储库,然后合并拉取请求,这与每年执行的请求相同,并且具有完全相同的问题,此外,如果您是git的新手,则可能会发生冲突,并且这是一件比较繁琐的工作。

我想您需要阅读有关git存储库(和GitHub)如何工作的小教程,因为这只是一小部分,如果您仅查找认为提交已合并的提交,那么您将面临更多问题。当您将GitHub版本与从npm安装的内容进行比较时,会有很多发布,分支和很多内容。

© www.soinside.com 2019 - 2024. All rights reserved.