加载多个 JSON 文件 [重复]
Posted
技术标签:
【中文标题】加载多个 JSON 文件 [重复]【英文标题】:Load multiple JSON files [duplicate] 【发布时间】:2015-05-18 07:01:56 【问题描述】:我正在使用 node.js 开发一个项目,其中一个文件夹中有多个 JSON 文件,比如 FILES,我必须访问这些文件的内容。 一种方法是使用
var a = require('jsonfile')
然后执行所需的查询。
但是假设如果我有大约 20 个文件,用 require 函数将它们全部写出来会很头疼,有没有更好的方法来做到这一点。我知道在这种情况下可以使用 Mongodb,但我想使用 JSON 文件。有没有更好的方法来解决这个问题?
【问题讨论】:
***.com/a/10049704/3556874 【参考方案1】:你可以这样做:
var data = ,
dir = __dirname + '/FILES/';
fs.readdirSync(dir).forEach(function (file)
data[file.replace(/\.json$/, '')] = require(dir + file);
);
然后例如,您可以使用data.config
访问名为config.json
的json 文件。
您也可以像这样使用require-dir
module 来做同样的事情:
var requireDir = require('require-dir');
var data = requireDir(__dirname + '/FILES/');
【讨论】:
在此行出现错误表示“。”上出现意外标记在 forEach 之前。 fs.readdirSync(dir).forEach(function (file) @pkoli 我怀疑您运行的代码与上面相同。我无法重现您提到的错误。【参考方案2】:你不能用这样的东西吗?
How do you get a list of the names of all files present in a directory in Node.js?
将所有文件名写入一个数组,然后循环遍历它。
或者您可以编写一个包含所有当前文件的索引文件并先读取它。
【讨论】:
以上是关于加载多个 JSON 文件 [重复]的主要内容,如果未能解决你的问题,请参考以下文章
getJSON 在 chrome 上本地加载 json 数据文件时出错 [重复]