我知道之前已经问过同样的问题。但这很普遍,但是我是在特定情况下专门针对我的问题提问。
通过使用此命令npm install upper-case
,我可以下载大写软件包。但是,使用命令var upperCase = require('upper-case')
可以使用类似于var http = require('http')
的大写模块来使用http模块。
所以我的问题是在这种情况下模块和包之间有什么区别。他们是一样的吗?
从哪里可以找到诸如http或fs之类的内置模块的代码?
我知道之前已经问过同样的问题。但这很普遍,但是我是在特定情况下专门针对我的问题提问。
通过使用此命令npm install upper-case
,我可以下载大写软件包。但是,使用命令var upperCase = require('upper-case')
可以使用类似于var http = require('http')
的大写模块来使用http模块。
所以我的问题是在这种情况下模块和包之间有什么区别。他们是一样的吗?
从哪里可以找到诸如http或fs之类的内置模块的代码?
它们有些相同,只是将模块视为库,而将软件包视为一组库,一个软件包可能包含多个库的补丁。
,在Node js中调用模块的方式是,使用EX:node index.js
执行文件之后,它将引用侧面文件夹,并且位于我们之前,并寻找node_modules
文件夹。
使用var upperCase = require('upper-case')
节点js时,请转到node_modules
文件夹并打开upper_case
文件夹,然后打开package.json
并阅读此行"main": "upper-case.js"
。这行对节点说,您应该启动运行upper_case.js
的该模块,并且在此文件中,还有一个需要该模块的模块,类似upper_case。
但是您不能使用每个模块包装中的模块。它们是同一模块的依赖关系,对于您的程序,您必须定义自己的依赖关系和模块并分别安装它们。这是Node js的本质和本质,旨在使用此类模块。