Grunt Task for Merging Multiple JSON Files
npm install grunt-merge-jsonGrunt Task for Merging Multiple JSON Files


This plugin requires Grunt ~0.4.0
If you haven't used Grunt
before, be sure to check out the Getting
Started guide, as it explains how
to create a Gruntfile as well as
install and use Grunt plugins. Once you're familiar with that process,
you may install this plugin with this command:
``shell`
npm install grunt-merge-json --save-dev
Once the plugin has been installed, it may be enabled inside your
Gruntfile with this line of JavaScript:
`js`
grunt.loadNpmTasks('grunt-merge-json');
- replacer: (default null) the replacer argument for JSON.stringify() (second argument).space
- : (default \t) the space argument for JSON.stringify() (third argument).
_Run this task with the grunt merge-json command._
Task targets, files and options may be specified according to the Grunt
Configuring tasks guide.
Assuming we have the following types of source JSON files:
- src/foo/foo-en.json:
`json`
{
"foo": {
"title": "The Foo",
"name": "A wonderful component"
}
}
- src/bar/bar-en.json:
`json`
{
"bar": {
"title": "The Bar",
"name": "An even more wonderful component"
}
}
Assuming we want to generate the following destination JSON file:
`json`
{
"foo": {
"title": "The Foo",
"name": "A wonderful component"
},
"bar": {
"title": "The Bar",
"name": "An even more wonderful component"
}
}
`js`
grunt.initConfig({
"merge-json": {
"en": {
src: [ "src/*/-en.json" ],
dest: "www/en.json"
},
"de": {
src: [ "src/*/-de.json" ],
dest: "www/de.json"
}
}
});
`js``
grunt.initConfig({
"merge-json": {
"i18n": {
files: {
"www/en.json": [ "src/*/-en.json" ],
"www/de.json": [ "src/*/-de.json" ]
}
}
}
});