2015-06-19 116 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

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