我正在开发一个带有node.js的项目,其中文件夹中有多个JSON文件说FILES,我必须访问这些文件的内容。 一种方法是使用
var a = require('jsonfile')
然后执行所需的查询。
但是假设我有大约20个文件,用require函数编写所有文件会很头疼,有没有更好的方法来做到这一点。我知道在这种情况下可以使用Mongodb,但我想使用JSON文件。有没有更好的方法来解决这个问题?
答案 0 :(得分:2)
您可以这样做:
var data = {},
dir = __dirname + '/FILES/';
fs.readdirSync(dir).forEach(function (file) {
data[file.replace(/\.json$/, '')] = require(dir + file);
});
然后,例如,您可以使用config.json
访问名为data.config
的json文件。
你也可以像这样使用require-dir
module来做同样的事情:
var requireDir = require('require-dir');
var data = requireDir(__dirname + '/FILES/');
答案 1 :(得分:0)
你不能用这样的东西吗?
How do you get a list of the names of all files present in a directory in Node.js?
将所有文件名写入数组中,然后循环遍历它。
或者您可以编写包含所有当前文件的索引文件并首先读取它。