从排除文件夹中取出特定文件后排除特定文件夹 - Gulp

时间:2016-01-05 20:38:27

标签: javascript gulp

这是我到目前为止所做的:

gulp.task('build', function () {
// Concat all JS files into a single one called app.min.js
gulp.src([
        'public_html/js/app/' + argv.project + '.js',  // Take project specific file
        '!public_html/js/app/*.js',                 // Do not take all files from app folder
        'public_html/js/**/*.js',                   // Take all JS files that hasn't been excluded
    ])
    .pipe(concat('app.min.js'))
    .pipe(uglify())
    .pipe(gulp.dest('dist/' + argv.project + '/'));
});

目标是:

  • app文件夹
  • 中获取一个特定文件
  • 无论app文件夹中有多少文件,请务必排除所有其他文件。
  • 将所有JS文件放在 js 文件夹中,但不取出已排除的文件夹 app

问题

是当我定义'!public_html/js/app/*.js'时,BEFORE指定的特定文件根本没有添加到结果中。如果我删除 app文件夹的排除项,则app文件夹中的每个文件都会添加到结果中,从而使配置更改相互覆盖。

在排除整个文件夹之前加载特定文件的防火墙推理不起作用。 这是可能吗?

提前致谢。

解决方案

gulp.src([
    // Do not take all files from app folder except the project file
    '!public_html/js/app/{(*.js),!(' + argv.project + '.js)}',

    // Take all JS files that hasn't been excluded
    'public_html/js/**/*.js',                   
    ])

0 个答案:

没有答案