Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 需要根路径中的模块_Javascript_Node.js - Fatal编程技术网

Javascript 需要根路径中的模块

Javascript 需要根路径中的模块,javascript,node.js,Javascript,Node.js,假设我有以下目录: 'C:\\src' // Root path. 'C:\\src\\inner1' // Contain 'a.js' 'C:\\src\\inner2\\innermost' // Contain 'b.js' 因此,如果我在C:\\src\\inner1\\a.js中执行此操作: require('inner2/innermost/b') 它必须从C:\\src\\inner2\\innerst\\b.js返回导出的值,但我不想使用执行脚本的相对路径,例如: requ

假设我有以下目录:

'C:\\src' // Root path.
'C:\\src\\inner1' // Contain 'a.js'
'C:\\src\\inner2\\innermost' // Contain 'b.js'
因此,如果我在
C:\\src\\inner1\\a.js中执行此操作:

require('inner2/innermost/b')
它必须从
C:\\src\\inner2\\innerst\\b.js
返回导出的值,但我不想使用执行脚本的相对路径,例如:

require('../inner2/innermost/b')
因此,独立于当前脚本目录,我希望从这样的根路径获得一个模块

我怎么做?如果我需要在
package.json

中指定某些内容,则没有问题。请尝试这种方式

path = require('path');
path.resolve('../inner2/mostinner/b');

看一看@GeorgiyDubrov有趣,但是
\uu dirname
不是一个固定的目录,它根据目录的不同而不同。@matt您错过了全局部分。在root.js文件中,启动所有内容,您可以使用dirname,但将其设置为可以传递给sub.js文件的全局变量。@Darkrum是的,条目文件。虽然Node.js警告说,GLOBAL
已被弃用,而且可能无法在文件之间实现全球化,因为dat会造成混乱。您的目标是什么?相对路径比根相对路径更稳定,问题更少,这就是node.js支持相对路径而不支持根相对路径的原因<代码>我真的需要这个不是一个目标。对我来说,这听起来像是a/b问题。不幸的是,这与我不想要的示例相同,但感谢您的帮助:)。@Matt您使用的是什么操作系统?在windows上测试,工作方式与您想要的完全相同是的,它工作;但它没有使用相对于根的路径(
C:\\src
)。我想从这个
C:\\src
路径直接require,例如:
require('inner2/mostinner/b')
,我已经在我的问题中提到了您的示例。