grunt-merge-append-json
v0.10.0
Published
Grunt Task for Merging/Appending Multiple JSON Files
Downloads
27
Readme
grunt-merge-append-json
Grunt Task for Merging Multiple JSON Files
Getting Started
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:
npm install grunt-merge-append-json --save-dev
Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:
grunt.loadNpmTasks('grunt-merge-append-json');
Task Options
replacer
: (defaultnull
) the replacer argument forJSON.stringify()
(second argument).space
: (default\t
) the space argument forJSON.stringify()
(third argument).
Merge JSON Task
Run this task with the grunt merge-append-json
command.
Task targets, files and options may be specified according to the Grunt Configuring tasks guide.
Usage Example
Assuming we have the following types of source JSON files:
src/foo/foo-en.json
:
{
"foo": {
"title": "The Foo",
"name": "A wonderful component"
}
}
src/bar/bar-en.json
:
{
"bar": {
"title": "The Bar",
"name": "An even more wonderful component"
}
}
Assuming we want to generate the following destination JSON file:
{
"foo": {
"title": "The Foo",
"name": "A wonderful component"
},
"bar": {
"title": "The Bar",
"name": "An even more wonderful component"
}
}
Single file per target variant
grunt.initConfig({
"merge-json": {
"en": {
src: [ "src/**/*-en.json" ],
dest: "www/en.json"
},
"de": {
src: [ "src/**/*-de.json" ],
dest: "www/de.json"
}
}
});
Multiple files per target variant
grunt.initConfig({
"merge-json": {
"i18n": {
files: {
"www/en.json": [ "src/**/*-en.json" ],
"www/de.json": [ "src/**/*-de.json" ]
}
}
}
});
Just append to JSON file
grunt.initConfig({
"merge-append-json": {
"main": {
src: [ "foo.json" ],
append: {plus_one: 1}
dest: "foo.json"
}
}
});