gulp end callback not called

时间:2016-10-03 15:01:14

标签: node.js gulp gulp-babel

我在gulp上设置一个简单的任务时遇到了麻烦。我想通过gulp-babel传递文件来运行脚本,但永远不会调用end回调。

我也试过finish。唯一的回调叫做data,但它对我不起作用,因为我需要在所有文件都通过babel运行后运行它。

gulp-debug显示已正确找到文件。

有什么难事吗?

(function () {
    'use strict';

    var gulp = require('gulp'),
        babel = require('gulp-babel'),
        debug = require('gulp-debug');


    gulp.task('parseReviews', function () {
        gulp.src(['scripts/parseReviews.js', 'src/**/*.js'])
        .pipe(debug())
        .pipe(babel())
        .on('end', function () {
            const foo = require('../../scripts/parseReviews');
            console.log(foo);
        });
    });
})();

1 个答案:

答案 0 :(得分:1)

您需要return来自您的任务的流:

gulp.task('parseReviews', function () {
  return gulp.src(['scripts/parseReviews.js', 'src/**/*.js'])
    .pipe(debug())
    .pipe(babel())
    .on('end', function () {
        const foo = require('../../scripts/parseReviews');
        console.log(foo);
    });
});