Gulp不使用主bower文件创建JS和CSS文件

Gulp不使用主bower文件创建JS和CSS文件,gulp,main-bower-files,gulp-load-plugins,Gulp,Main Bower Files,Gulp Load Plugins,我正在使用Gulp连接/缩小bower文件夹(使用主bower文件)和src文件夹中的所有JS/CSS文件。我使用gulp load插件从package.json加载以下依赖项(所有这些依赖项都存在于node_模块中): 以下是gulpfile.js: // Include Gulp var gulp = require('gulp'); var src = 'src/'; var dest = 'public/'; // Include plugins var plugins = requ

我正在使用Gulp连接/缩小bower文件夹(使用主bower文件)和src文件夹中的所有JS/CSS文件。我使用gulp load插件从package.json加载以下依赖项(所有这些依赖项都存在于node_模块中):

以下是gulpfile.js:

// Include Gulp
var gulp = require('gulp');

var src = 'src/';
var dest = 'public/';

// Include plugins
var plugins = require("gulp-load-plugins")({
    pattern: ['gulp-*', 'gulp.*', 'main-bower-files'],
    replaceString: /\bgulp[\-.]/
});

//Concat + Minify JS
gulp.task('js', function() {

var jsFiles = ['/src/js/*'];

gulp.src(plugins.mainBowerFiles().concat(jsFiles))
    .pipe(plugins.filter('*.js'))
    .pipe(plugins.concat('main.js'))
    .pipe(plugins.uglify())
    .pipe(gulp.dest('public/js'));

});
//Concat + Minify CSS
gulp.task('css', function() {

var cssFiles = ['src/css/*'];

gulp.src(plugins.mainBowerFiles().concat(cssFiles))
    .pipe(plugins.filter('*.css'))
    .pipe(plugins.concat('main.min.css'))
    .pipe(plugins.uglify())
    .pipe(gulp.dest(dest + 'css'));

});

// Default Task
gulp.task('default', ['js','css']);

Gulp没有在控制台中提供任何错误,但是没有创建JS或CSS文件

最终,问题缩小到吞咽过滤器不返回任何文件。对于任何试图进行类似设置的人,我最终选择了一个稍微不同的路径,使用mainBowerFiles来过滤达到相同最终结果的文件:

// Include Gulp
var gulp = require('gulp');

// Include plugins
var plugins = require("gulp-load-plugins")({
    pattern: ['gulp-*', 'gulp.*', 'main-bower-files'],
    replaceString: /\bgulp[\-.]/
});


var src = 'src/';
var dest = 'public/';


//Concat + Minify JS
gulp.task('test', function() {

console.log(plugins);

});


//Concat + Minify JS
gulp.task('js', function() {

var jsFiles = ['src/js/*'];

gulp.src(plugins.mainBowerFiles('**/*.js').concat(jsFiles))
    .pipe(plugins.concat('main.min.js'))
    .pipe(plugins.uglify())
    .pipe(gulp.dest(dest + 'js'));

});

gulp.task('css', function() {

    var cssFiles = ['src/css/*'];

    gulp.src(plugins.mainBowerFiles('**/*.css', {
        overrides: {
            bootstrap: {
                main: [
                    './dist/css/bootstrap.min.css'
                ]
            }
        }
    }).concat(cssFiles))
    .pipe(plugins.concat('main.min.css'))
    .pipe(plugins.cleanCss())
    .pipe(gulp.dest(dest + 'css'));

});


// Default Task
gulp.task('default', ['js','css']);

我遇到了完全相同的问题,结果发现“吞咽过滤器”不起作用,因为这条线路:

.pipe(plugins.filter('*.js'))
它应该是以下内容:

.pipe(plugins.filter('**/*.js'))

CSS也应该是这样,而且工作正常。

看看它是否返回空数组?
plugins.mainBowerFiles()
正在按预期返回文件路径数组。嘿,查德,那么你接下来如何过滤其他文件呢?我试过你的方法,它对我有效,但有点吓人
.pipe(plugins.filter('**/*.js'))