es.merge не объединяет мои потоки

У меня есть следующее задание глотка:

var es = require('event-stream'),
    concat = require('gulp-concat'),
    templateCache = require('gulp-angular-templatecache');

var scripts = gulp.src(paths.js + '/**/*.js'),
    templates = gulp.src(paths.templates + '/**/*.html')
        .pipe(templateCache('templates.js', {
            module: 'spot.im.core',
            standalone: false
        }));

es.merge(templates, scripts)
    .pipe(concat('all.js'))
    .pipe(gulp.dest(paths.dist))

При запуске этого я не получаю шаблоны внутри all.js. Но когда я делаю:

es.merge(templates)
    .pipe(concat('all.js'))
    .pipe(gulp.dest(paths.dist))

all.js содержит шаблоны.

Что я делаю неправильно?

1 ответ

Решение

Я думаю, что вы забыли определить задачу здесь; и вместо этого вы можете заменить поток событий на поток слияния. У меня не было проблем с запуском потока слияния во многих задачах.

var merge = require('merge-stream'),
    concat = require('gulp-concat'),
    templateCache = require('gulp-angular-templatecache');

gulp.task('default', function () {
    var scripts = gulp.src(paths.js + '/**/*.js');
    var templates = gulp.src(paths.templates + '/**/*.html')
        .pipe(templateCache('templates.js', {
            module: 'spot.im.core',
            standalone: false
        }));

    return merge(templates, scripts)
        .pipe(concat('all.js'))
        .pipe(gulp.dest(paths.dist));
});

Запустите в командной строке с gulp,

Другие вопросы по тегам