Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/35.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
Windows 对于Node.JS,Win中的核心模块在哪里?_Windows_Node.js_Configuration - Fatal编程技术网

Windows 对于Node.JS,Win中的核心模块在哪里?

Windows 对于Node.JS,Win中的核心模块在哪里?,windows,node.js,configuration,Windows,Node.js,Configuration,从中可以看出,核心模块安装在NodeJS根文件夹的/lib文件夹中,但是当我试图搜索它时,我没有看到/lib文件夹 有什么想法吗 另外,在我做了一个 var a = require("a.js"); 是否可以获取a.js的相应路径?这意味着/lib文件夹位于源代码中,而不是您的计算机中。你可以从中看到它 及 require 绝对路径:如果参数不是以/'或'../'开头,则它是绝对路径。所以,节点可以在核心模块(它在节点运行时编译)或使用npm在本地安装的“node_modules”中查找它

从中可以看出,核心模块安装在NodeJS根文件夹的/lib文件夹中,但是当我试图搜索它时,我没有看到/lib文件夹

有什么想法吗

另外,在我做了一个

var a = require("a.js");

是否可以获取a.js的相应路径?

这意味着
/lib
文件夹位于源代码中,而不是您的计算机中。你可以从中看到它

require

  • 绝对路径:如果参数不是以
    /'或
    '../'开头,则它是绝对路径。所以,节点可以在核心模块(它在节点运行时编译)或使用npm在本地安装的“node_modules”中查找它

  • 相对路径:如果参数以
    /
    ./
    开头,则为相对路径。所以节点查找它相对于当前位置的路径


很简单。您可以使用
require.resolve('a.js')
获取绝对系统路径。但是核心模块没有路径,因为它是内置的。

虽然公认的答案足以解决这个问题,但值得一提的是,它有一些关于所需模式的误导性信息。从根本上说:

前缀为“/”的模块是文件的绝对路径。例如,require('/home/marco/foo.js')将在/home/marco/foo.js加载文件

前缀为“/”的模块与调用require()的文件相关。也就是说,circle.js必须与foo.js位于同一目录中,require(“./circle”)才能找到它

如果没有前导“/”或“/”来表示文件,则该模块要么是“核心模块”,要么是从node_modules文件夹加载的