function concat_target_files(files) {
function concatFiles(files, index) {
var applicationFiles = JSON.parse(fs.readFileSync(files[index]));
if (!applicationFiles.EMULATOR && !applicationFiles.NATIVE &&
applicationFiles.length) {
var destination = files[index].substr(0,
(files[index].lastIndexOf('/') - 4)),
fileArr = [];
applicationFiles.forEach(file => {
fileArr.push(path.resolve(files[index].substr(0, files[index].lastIndexOf('/')) + '\\' +file))
});
gulp.src(fileArr)
.pipe(deporder())
.pipe(concat('app.js'))
.pipe(gulp.dest(destination + 'min/'))
.pipe(rename('app-min.js'))
.pipe(uglify())
.pipe(gulp.dest(destination + 'min/'));
}
index++
if(index < files.length-1) {
concatFiles(files, index);
}
}
concatFiles(files, 0)
}
Я использую плагин gulp-uglify для минимизации каскадного кода
примечание: файлы меньшего размера объединяются и минимизируются с помощью приведенного выше кода и не работают для больших файлов