我有一个目录如下所示:
-- app/
|- models/
|- user.js
|- config.json
我希望我的user.js
文件需要config.json
。现在我正在使用require('/config')
,但这不起作用。我做错了什么?我希望避免使用require('../config')
。
简单的答案就是你没有做错什么。根据一些研究,require函数将查找以下内容之一:
参见:http://www.bennadel.com/blog/2169-where-does-node-js-and-require-look-for-modules-.htm和:http://nodejs.org/api/modules.html#loading_from_node_modules_folders
上面的两个参考资料都引用了修改NODE_PATH环境变量的功能,但是这听起来是非常糟糕的做法,至少会使代码的可移植性降低。它甚至可能对像config.json这样的文件也不起作用,因为尽管我从来没有这样做过,但我认为更改NODE_PATH变量只会在require()查找对应于实际模块的package.json文件时发生变化。
总之,请参见:如何使node.js中的require始终相对于项目的根文件夹?如上文Piotr Kowalczuk所述。根据这篇文章,你有两个真正的选择:
最后,请记住,您正在尝试做的事情与您正在使用的程序的主旨相违背。我认为这是一个你最终会让你的生活(和你的合作者的)更容易的例子通过遵循节点的纹理和使用相关的文件路径来实现。
问题内容: 我的目录结构如下: script.php inc / include1.php inc / include2.php 对象/ object1.php 对象/ object2.php soap / soap.php 现在,我在和中都使用了这些对象,可以移动它们,但是出于特定的原因,我想要这样的目录结构。当执行包含路径is 和执行它时,绝对路径有效,但是如果我想将目录移动到其他位置,则这是
我想知道在不运行require的情况下,节点的require将解析到什么路径。 例如 在内部node.js将查看它的PATH,弄清楚它是一个目录、一个js文件、一个json文件等。,然后加载文件。 有没有办法在不实际加载模块的情况下只处理完整解析的路径? 我正在寻找的输出是这样的 重要的部分是. js扩展名,因为节点必须完全解析路径。 注意:无法解决此问题。如果some_module实际上是一个包
问题内容: 如果使用绝对路径,则无法将整个目录移动到新位置。如果使用相对路径,则无法将单个文件移动到新位置。 这里有什么解决方案?您是否设置了一个包含根路径并从那里开始的配置文件?还是您有类似的规则:永不移动文件? 我在某些项目中看到人们使用dirname( FILE )。我的意思是,为什么不简单地将其删除,因为目录名还是相对的(取决于文件所在的位置)? 问题答案: 您应该使用一个配置文件,该配置
位置路径指定XML文档中节点的位置。路径可以是绝对路径或相对路径。 如果位置路径以根节点或开头,则它是绝对路径。 以下是使用绝对路径定位元素的示例中的一小部分。 - 选择类根节点中的节点。 - 在类根节点中选择节点的名称。 示例 在这个例子中,我们创建了一个示例XML文档students.xml,及其样式表文档students.xsl,它使用了XPath表达式。 以下是使用的示例XML,文件:st
问题内容: 如果我做一个 然后我收到服务器控制台警告 表达已弃用:改为使用 但它在客户端工作正常。 但是当我将其更改为 我得到一个错误 TypeError:路径必须是绝对路径或将根目录指定为 并且不呈现。 我无法弄清楚绝对路径是什么。我的目录与处于同一级别。我正在使用。我也宣布 添加我的目录结构: 在此处指定的绝对路径是什么? 我正在使用Express4.x。 问题答案: 该中间件是独立的,所以用
主要内容:什么是当前工作目录,什么是绝对路径与相对路径,Python处理绝对路径和相对路径在介绍绝对路径和相对路径之前,先要了解一下什么是当前工作目录。 什么是当前工作目录 每个运行在计算机上的程序,都有一个“当前工作目录”(或 cwd)。所有没有从根文件夹开始的文件名或路径,都假定在当前工作目录下。 注意,虽然文件夹是目录的更新的名称,但当前工作目录(或当前目录)是标准术语,没有当前工作文件夹这种说法。 在 Python 中,利用 os.getcwd() 函数可以取得当前工作路径的字