该主题可能看似重复。完全阅读
我知道nodejs中有多个软件包可用于要求目录中的所有文件。
但我正在研究要求文件夹中的所有文件并使用在每个js文件中导出的变量和函数。需要通过要求目录名来执行此操作。
例如,
var files = require("./folder");
该文件夹可能包含一些文件,例如
File1.js,File2.js,File3.js
我想使用在所有js文件中导出的所有变量和函数。
我认为" Package.json"可能会有某种方式。文件。
但我不是" Package.json"。
的专家任何人都可以帮我弄清楚这个吗?
答案 0 :(得分:2)
你能不能用模块创建一个index.js文件,只需要它。
来自文档http://nodejs.org/api/modules.html#modules_loading_from_the_global_folders
将程序和库组织到自包含目录中很方便,然后为该库提供单个入口点。有三种方法可以将文件夹传递给require()作为参数。
第一种是在文件夹的根目录中创建一个package.json文件,该文件指定一个主模块。示例package.json文件可能如下所示:
{ "name" : "some-library",
"main" : "./lib/some-library.js" }
如果这是在./some-library的文件夹中,则require(' ./ some-library')会尝试加载./some-library/lib/some-library.js。
这是Node对package.json文件的认识程度。
如果目录中没有package.json文件,则node将尝试从该目录中加载index.js或index.node文件。例如,如果上例中没有package.json文件,则require(' ./ some-library')会尝试加载:
./一些库/ index.js ./some-library/index.node