2016-11-12 105 views
0

我想從bower_components獲取所有文件並將它們壓縮到像vendor.js和vendor.css這樣的文件上。gulp沒有創建任何文件,但完成沒有任何錯誤

當我執行命令glup vendor-build時,我得到沒有錯誤。有什麼我做錯了嗎?我從另一個stackoverflow問題得到了腳本。我試圖尋找更多的東西,使我的代碼工作,但找不到任何東西。我知道我錯過了一些錯誤。

項目目錄結構

enter image description here

gulpfile.js

var gulp = require('gulp'); 

// define plug-ins 
var flatten = require('gulp-flatten'); 
var gulpFilter = require('gulp-filter'); 
var uglify = require('gulp-uglify'); 
var minifycss = require('gulp-minify-css'); 
var rename = require('gulp-rename'); 
var mainBowerFiles = require('main-bower-files'); 
var concat = require('gulp-concat'); 

// Define paths variables 
var dest_path = 'app/static'; 

gulp.task('vendor-build', function() { 

     var jsFilter = gulpFilter('*.js', {restore: true}); 
     var cssFilter = gulpFilter('*.css', {restore: true}); 
     var fontFilter = gulpFilter(['*.eot', '*.woff', '*.svg', '*.ttf']); 

     return gulp.src(mainBowerFiles()) 
     .pipe(jsFilter) 
     .pipe(concat('vendor.js')) 
     .pipe(uglify()) 
     .pipe(rename({ 
      suffix: ".min" 
     })) 
     .pipe(gulp.dest(dest_path + '/js')) 
     .pipe(jsFilter.restore) 
     .pipe(cssFilter) 
     .pipe(concat('vendor.css')) 
     .pipe(minifycss()) 
     .pipe(rename({ 
      suffix: ".min" 
     })) 
     .pipe(gulp.dest(dest_path + '/css')) 
     .pipe(cssFilter.restore) 
     .pipe(fontFilter) 
     .pipe(flatten()) 
     .pipe(gulp.dest(dest_path + '/fonts')); 
}); 

回答

0

我能夠通過改變gulpFilter行話參數來解決。但我不知道爲什麼它解決了這個問題。

var jsFilter = gulpFilter('**/*.js', {restore: true}); 
var lessFilter= gulpFilter('**/*.less', {restore: true}); 
var fontFilter = gulpFilter(['*.eot', '*.woff', '*.svg', '*.ttf']); 
相關問題