我克隆了Express.js repo,其中包含一个示例文件夹,其中包含Express.js不同的用例。我打开了Hello World示例,代码从以下几行开始
var express = require('../../');
我了解该文件中的其余代码,但是上面的代码行了吗?我知道
require
函数用于在您的项目中包括一个JS模块,并且应该将模块名称作为参数传递给require()
函数,但是在上述声明的情况下,我们正在传递目录,它的作用是做? 最佳答案
您正在传递的index.js
文件位于当前文件夹之后的两个文件夹中。
例:
因此,如果您在yourFile.js
上有此标签
var something = require('../../');
您正在引用index.js
。如果执行以下操作,则完全相同:
var something = require('../../index');
并且两者与此完全相同(使用.js
,在这种情况下是不必要的)var something = require('../../index.js');
发生这种情况是因为index.js
是默认名称。您可以阅读更多at nodejs.org,但此处引用了重要的部分: