背景知识:我正在学习nodejs / express,并有一个小应用程序,最终应将其用作api。我有一个routes
目录,其中包含一些子目录,其中包含诸如Post.js
或Users.js
之类的文件,每个文件都定义了Posts
,Users
等的一些路由。
我在index.js
的{{1}}中直接放置了以下代码:
routes
它的作用如下:通过在循环中调用自身并需要找到的任何文件来读取每个子目录的public readDir(path, app) {
let dir = path != null ? path : __dirname;
fs.readdir(dir, (err, elements) => {
if(err) throw err;
if(!elements) return;
elements.forEach(element => {
if(element === "init.js") return;
let new_path = x.join(dir, "/", element);
fs.lstat(new_path , (err, stat) => {
if(err) throw err;
if(stat.isDirectory()) {
this.readDir(new_path , app);
} else if(stat.isFile()) {
require(PATH)(app);
}
});
});
});
}
目录(路径模块被导入为x,我可能应该在某个时候进行更改) 。幸运的是,每条路线都可以正确映射,并且可以通过邮递员/失眠者进行呼叫来访问。
我的问题是如何更好地做到这一点,主要是从性能角度考虑,同时又保持多个文件和/或目录的结构?
我已经看过this answer和this one,尽管它们看起来都是很好的实用答案,但我想知道哪种方法更好?
任何指针都很棒!