使用Gulp中的event-stream连接流时的顺序

4
在这个 Gulp 任务中,vendorFiles 代码被放在目标 style.css 文件中的 appFiles 代码之后。
是因为 appFiles 流运行得更快吗?如何让 vendorFiles 代码按照预期放在 appFiles 代码之前?
gulp.task('styles', function () {

    var vendorFiles = gulp.src(mainBowerFiles()) // don't read
        .pipe(gulpFilter('*.css'));

    var appFiles = gulp.src('app/sass/*.scss')
        .pipe(sass())
        .pipe(prefix('> 5%'));

    return es.concat(vendorFiles, appFiles)
        .pipe(minifyCSS())
        .pipe(concat('style.css'))
        .pipe(gulp.dest('./dist/css'));
});
1个回答

4

使用gulp-order解决了这个问题。

gulp.task('scripts', function () {

    var jsFilter = gulpFilter('*.js');
    var vendorFiles = gulp.src(mainBowerFiles())
        .pipe(jsFilter)
        .pipe(concat('vendor.js'));

    var appFiles = gulp.src('app/js/*.js')
        .pipe(jshint())
        .pipe(jshint.reporter('default'))
        .pipe(concat('app.js'));

    return eventStream.concat(vendorFiles, appFiles)
        .pipe(order([
            "vendor.js",
            "app.js"
        ]))
        .pipe(concat('app.js'))
        .pipe(uglify())
        .pipe(gulp.dest('./dist/js'));
});

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接