我有点傻了,我正在寻找正确的任务组合来读取大量类似格式的json文件,从每个文件中拉出一个特定的数组,将它们组合起来,然后保存为新文件。我已经成功地使用gulp-concat来组合文件,并使用gulp-json-editor来更改一个文件的值,但是我很难围绕如何将这些进程串联起来。
n个json文件的格式如下:
{
"id": "groupofthings1",
"things": [
{ ... },
{ ... },
],
...
}
所需的单个文件输出包含所有“东西”:
[
{ ... },
{ ... },
{ ... },
{ ... },
...
]
答案 0 :(得分:8)
我做了一些搜索,但最终找到了jsoncombine
它加载所有json文件并通过自定义函数运行它们作为json对象的哈希。每个json对象都以其原始文件名保存。
gulp.src("./groups/of/things/**/things.json")
.pipe(jsoncombine("all-things.json",function(data){
// do any work on data here
return new Buffer(JSON.stringify(data));
}))
.pipe(gulp.dest("./dest"));