node.js是否需要文件夹中的所有文件?

如何在node.js的文件夹中需要所有文件?

需要类似的东西:

files.forEach(function (v,k){
  // require routes
  require('./routes/'+v);
}};
Sam逆天2020/03/18 16:56:24

可以使用:https//www.npmjs.com/package/require-file-directory

  • 需要仅具有名称或所有文件的选定文件。
  • 无需绝对路径。
  • 易于理解和使用。
老丝梅樱2020/03/18 16:56:24

我一直用于此确切用例的一个模块是require-all

它递归地要求给定目录及其子目录中的所有文件,只要它们与excludeDirs属性不匹配

它还允许指定文件过滤器以及如何从文件名导出返回的哈希的键。

神奇小小2020/03/18 16:56:24

给require给出文件夹的路径后,它将在该文件夹中寻找一个index.js文件。如果有一个,它会使用它,如果没有,它将失败。

如果您可以控制文件夹,那么创建一个index.js文件,然后分配所有“模块”,然后简单地要求就可以了。

yourfile.js

var routes = require("./routes");

index.js

exports.something = require("./routes/something.js");
exports.others = require("./routes/others.js");

如果您不知道文件名,则应该编写某种加载程序。

装载机的工作示例:

var normalizedPath = require("path").join(__dirname, "routes");

require("fs").readdirSync(normalizedPath).forEach(function(file) {
  require("./routes/" + file);
});

// Continue application logic here