20190208 Gulp运行报错Did you forget to signal async completion

在不使用文件流的情况下,向task的函数里传入一个名叫done的回调函数,以结束task,如下代码所示:

gulp.task('testGulp', done => {
  console.log('Hello World!');
  done();
});

done回调函数的作用是在task完成时通知Gulp(而不是返回一个流),而task里的所有其他功能都纯粹依赖Node来实现。


const gulp = require("gulp")

// 转译JavaScript
gulp.task('webpack', done => {
    const webpack = require('webpack-stream')
    const config = require('./webpack.config')

    gulp.src('./src/js/**/*.js')
        .pipe(webpack(config))
        .pipe(gulp.dest('./www/js'))

    done()
})

// 编译 less -> css
gulp.task('css', done => {
    const less = require('gulp-less')
    gulp.src('./src/less/*.less')
        .pipe(less())
        .pipe(gulp.dest('./www/css'))

    done()
})

// 顺序执行webpack、css两个任务
gulp.task('default', gulp.series('webpack', 'css'))
posted @ 2019-04-13 01:58  耿文浩  阅读(571)  评论(0编辑  收藏  举报