我正在尝试从bower_components获取所有文件,并将它们压缩到像vendor.js和vendor.css这样的文件中。
执行命令glup vendor-build时,我没有收到任何错误。有什么我做错了吗?我从另一个stackoverflow问题得到了脚本。我试着搜索更多来使我的脚本工作,但无法找到任何东西。我知道我错过了一些错误。
项目目录结构
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 :(得分:0)
我能够通过改变gulpFilter patter参数来解决。但我不知道为什么它会解决这个问题。
var jsFilter = gulpFilter('**/*.js', {restore: true});
var lessFilter= gulpFilter('**/*.less', {restore: true});
var fontFilter = gulpFilter(['*.eot', '*.woff', '*.svg', '*.ttf']);