2014-10-27 68 views
1

免責聲明:新節點,溪流,吞掉gulp-concat:多個外部「配置」文件,可以嗎?

我想更新/改進我們當前的構建過程中,通過前端 - Maven的插件使用一口,我想知道是否可以使用外部配置文件告訴gulp concat要使用哪些文件?

目前我們正在做一些ruby和json,這些ruby和json位於/ scripts/config /下,並且輸出到一個組合文件夾。有幾十個這樣的配置,可以通過發佈來增加或減少發佈。

比如說配置文件看起來像這樣:

我看到
{ 
"outputFileName": "foo.js", 
"dependencies":["blah.js","blah.js","blah.js"] 
} 

所有的例子已經與在一飲而盡文件預定義的硬編碼列表。我想我真正要問的是,如果這個功能開箱即用,或者我需要爲此編寫一個插件,當然假設這個插件尚不存在。

感謝您的時間

回答

5

是,加載JSON是普通節點:

加載多個文件
var gulp = require('gulp'); 
var concat = require('gulp-concat'); 
var config = require('./scripts/config/something.json'); 

gulp.task('scripts', function() { 
    return gulp.src(config.dependencies) 
     .pipe(concat(config.outputFileName)) 
     .pipe(gulp.dest('somewhere')); 
}); 

例子:

var gulp  = require('gulp'); 
var concat  = require('gulp-concat'); 
var requireDir = require('require-dir'); 
var config  = requireDir('./scripts/config'); 

gulp.task('scripts', function() { 
    return gulp.src(config.something.dependencies) 
     .pipe(concat(config.something.outputFileName)) 
     .pipe(gulp.dest('somewhere')); 
}); 
+0

由於科瓦萊寧這是偉大的。如果我想要它的配置文件列表,我會做這樣的事情,var config = require('./ scripts/config/*。json')? – iamw00t 2014-10-28 18:15:05

+0

那裏有例如[require-dir](https://github.com/aseemk/requireDir)。 – Heikki 2014-10-28 19:33:20

+0

如果您覺得合適,請記住接受答案。 – Heikki 2014-10-28 19:41:07

相關問題