2015-06-19 58 views
0

我想,當我運行一飲而盡做這樣的事情:如何使用安裝一飲而盡鮑爾

1.使用「吞掉鮑爾」以安裝bower.json所有的依賴。

2.使用「主亭子檔案」找到所有亭子組成部分,並將其Concat的到一個文件

var gulp = require('gulp'); 
var bower = require('gulp-bower'); 
var mainBowerFiles = require('main-bower-files'); 

gulp.task('default', function() { 
    return bower() 
     .pipe(gulp.src(mainBowerFiles())) 
     .pipe(concat('lib.js')) 
     .pipe(gulp.dest('static/lib')); 
}); 

,但是這會給錯誤:鮑爾組件目錄不首先存在,然後下載涼亭組件之後。 如何先下載組件,然後運行main-bower-files

+0

也許你應該考慮[browserify(http://browserify.org/),而不是 –

回答

1

gulp-bower異步運行,因此在文件完成下載之前它會移動到管道的下一部分。爲了解決這個問題,你需要單獨的任務:

var gulp = require('gulp'); 
var bower = require('gulp-bower'); 
var concat = require('gulp-concat'); 
var mainBowerFiles = require('main-bower-files'); 

gulp.task('bower', function() { 
    return bower(); 
}); 

gulp.task('bower-concat', ['bower'], function() { 
    return gulp.src(mainBowerFiles()) 
     .pipe(concat('lib.js')) 
     .pipe(gulp.dest('static/lib')); 
}); 

gulp.task('default', ['bower-concat']); 
+0

由於德里克,它的作品! –