NodeJS中的文件模块vs文件夹模块



假设我有一个条目。js文件entry.js

var t = require('./test'); //it can be file or folder module

如果我有一个文件夹和一个名为"test"的文件在同一个包中的entry.js,执行将如何发生,因为两者都有相同的名称?哪个模块具有最高的优先级?

检查优先级将是下一个:

  1. 。/. js
  2. 。/test.json
  3. 。/test.node
  4. 。/测试/index.js
  5. 。/测试/index.node

来源:

https://nodejs.org/api/modules.html modules_file_moduleshttps://nodejs.org/api/modules.html modules_folders_as_modules

from reqire 's docs:

一旦Node.js找到node_modules文件夹,它就会尝试加载给定的模块可以作为(.js) Javascript文件或命名子目录。
并且,如果它找到命名的子目录,它将尝试加载该文件以各种方式。因此,例如,如果你请求加载模块,"test":

var utils = require( "test" );

…Node.js将对"node_modules"执行分层目录搜索
和"test"按以下方式:

./node_modules/test.js
./node_modules/test/index.js
./node_modules/test/package.json

所以答案是:File第一,Directory第二,Module第三

相关内容

  • 没有找到相关文章

最新更新