Gulp 4 您是否忘记发出异步完成信号?

Ник*_*ров 5 gulp

我正在尝试使用 gulp sass 构建我的 sass,但出现错误:

以下任务未完成:构建、清理 您是否忘记发出异步完成信号?

gulp.task('clean', function() { return del.sync('dist'); });

 gulp.task('build', gulp.series('clean', 'imagemin', 'sass', 'js', function(done) {

var buildMain = gulp.src([
    'app/*.html',
    'app/.htaccess'
]).pipe(gulp.dest('dist'));

var buildCss = gulp.src([
    'app/css/main.min.css'
    ])
.pipe(gulp.dest('dist/css'));

var buildJs =  gulp.src([
    'app/js/scripts.min.js'
    ])
.pipe(gulp.dest('dist/js'));

var buildFonts = gulp.src([
    'app/fonts/**/*'
    ])
.pipe(gulp.dest('dist/fonts'));
done(); }));
Run Code Online (Sandbox Code Playgroud)

小智 3

就像Sven Schoenung在这个问题中所说:

这是一个更适合您的用例的机制。请注意,大多数时候您不必自己创建 Promise 对象,它通常由包提供(例如,经常使用的 del 包返回 Promise)。

我尝试了这种方法,对我来说很有效。代码将是:

gulp.task('clean:dist', function (resolve) {
  del.sync('dist');
  resolve();
})
Run Code Online (Sandbox Code Playgroud)