Gulp.js - 无法将生成的文件从一个文件夹复制到另一个文件夹

Gulp.js - Not able to copy generated files from one folder to another

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

   gulp.src(['src/test/test.css])
   .pipe(concat('test1.css'))
   .pipe(minifyCSS())
   .pipe(gulp.dest('src/source/'))
   .pipe(filesize())

});
gulp.task('copy-css',['minify-css'], function () {

   gulp.src('src/source/*.css')
   .pipe(gulp.dest('src/dest/'));

});

我好像是第一次运行'gulp copy-css'

Starting 'minify-css'...
[18:54:39] Finished 'minify-css' after 61 ms
[18:54:39] Starting 'copy-css'...
[18:54:39] Finished 'copy-css' after 1.86 ms

但是复制操作没有执行可能是因为它甚至在要复制的文件没有生成之前就执行了

尽管我已经提到 minify-css 作为 copy-css 任务的依赖项,但在这种情况下似乎没有遵循该约定。

当gulp copy-css又是运行时,这次复制文件是因为文件已经由之前执行的命令生成。但是当代码在生产中使用时,这将达到目的。

我会查看这个 question,因为您可能必须在 gulp.src(['src/test/test.css]) 之前添加 return 关键字...

尝试在 on('finish') 事件中使用回调:

gulp.task('minify-css', function (cb) {

   gulp.src(['src/test/test.css'])
    .pipe(concat('test1.css'))
    .pipe(minifyCSS())
    .pipe(gulp.dest('src/source/'))
    .pipe(filesize())
    .on('finish', function() {
        // All tasks should now be done
        return cb();
    })

});

gulp.task('copy-css',['minify-css'], function () {

   gulp.src('src/source/*.css')
     .pipe(gulp.dest('src/dest/'));

});

PS: 您还在最顶部的 gulp.src 数组中出现语法错误,只是缺少引号 ' 此处 gulp.src(['src/test/test.css])

如下更改两个任务

gulp.task('minify-css', function () {
    return  gulp.src(['src/test/test.css])
   .pipe(concat('test1.css'))
   .pipe(minifyCSS())
   .pipe(gulp.dest('src/source/'))
   .pipe(filesize())    
});

gulp.task('copy-css',['minify-css'], function () {
   return gulp.src('src/source/*.css')
   .pipe(gulp.dest('src/dest/'));

});

添加 return 以便下一个任务在第一个任务运行之后运行,否则即使在 minify-css 完成之前,您的 copy-csss 也是 运行..因此错误...