Gulp copy min file但不是js / css

时间:2016-02-25 14:27:54

标签: node.js gulp glob

我试图将我的所有资产复制到我的公共目录中但我想要除JavaScript和CSS文件之外的所有资源导致它们被连接并缩小为prod.min.jsprod.min.css所以我想要为min.jsmin.css文件制作两个例外。

我试过这个(现在只用于JS)

gulp.src([src + '/**/*', src + '/**/*.min.js', '!' + src + '/**/*.js'])
          .pipe(gulp.dest(dest))

但它导致根本没有JavaScript文件。

怎么办呢?

2 个答案:

答案 0 :(得分:0)

为CSS和JS创建单独的glob数组。然后你可以更有选择性地被移动。

答案 1 :(得分:0)

我现在也在处理这个问题。

我修补它的方式(它是一个补丁,因为它不是一个真正的最佳解决方案)是通过两次传递:

  1. 第一遍 - >移动所有(**/*.*)个文件并取消所有js扩展名(!**/*.js
  2. 第二遍 - >仅移动缩小的文件(**/*.min.js
  3. 快速任务示例:

    gulp.task('move-min-not-src', [], function() {
    
        var paths = [
            [
                'source-folder/**/*.*',
                '!source-folder/**/*.js'
            ],
            [
                'source-folder/**/*.min.js'
            ]
        ];
    
        paths.forEach(function(path) {
    
            gulp.src(path)
                .pipe(
                    gulp.dest('destination-folder/')
                );
    
        });
    
    });