gulp任务开始但不会结束

时间:2015-05-14 12:49:35

标签: gulp

我有下一个文件结构:

src/
    themes/
        default/
            1.png
            2.png
        oneMoreTheme/
            3.png
            4.png
dist
    themes/
        default/
        oneMoreTheme/

和下一个gulpfile:

  'use strict';

  var gulp = require('gulp'),
    _ = require('lodash'),
    plugins = require('gulp-load-plugins')();

  gulp.task('images', function () {
    var streams = {},
      themes = [
        'default',
        'oneMoreTheme'
      ];

    streams.themesImages = [];

    _.forEach(themes, function(theme) {
      streams.themesImages.push(gulp.src('src/themes/' + theme + '/*.*')
      .pipe(gulp.dest('dist/themes/' + theme + '/')));
    });

    streams.allThemeImages = plugins.merge(streams.themesImages);

    return streams.allThemeImages;
  });

我无法理解两件事: 1)为什么在任务“images”开始时在控制台中看到下一个文本:

"D:\home\projects\storyBook>gulp images
[15:05:23] Using gulpfile D:\home\projects\storyBook\gulpfile.js
[15:05:23] Starting 'images'..."

但是当任务完成后,我看不到下一个文字:

"[12:13:56] Finished 'images' after 5.72 s"

为什么我没有收到这个文字?我做流合并然后返回合并流以具有同步任务。也许我做错了什么?

2)如果我在我的私密代码中添加一个代码行:

streams.allThemeImages = plugins.merge(streams.themesImages);
return streams.allThemeImages.pipe(gulp.dest('temp/')); // HERE IS NEW CODE LINE

我希望在临时文件夹中我会有下一张图片: 温度/     1.png     2.png     3.png     4.png 因为我合并了流,第一个包含1.png和2.png图像,第二个包含3.png和4.png。但实际上我得到了下一个文件: 温度/     1.png     2.png 有什么问题?

0 个答案:

没有答案