0

我的 gulp 文件在上面:

var gulp = require('gulp');

var concat = require('gulp-concat');
var uglify = require('gulp-uglify');
var del = require('del');

gulp.task('clean', function(cb) {
    del(['dist/*.js'], cb);
});

当我运行“gulp clean”时,我的输出是:

[12:45:05] Using gulpfile

[12:45:05] Starting 'clean'...

该命令删除 dist 文件夹的文件。

如果我删除回调函数,结果是:

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

    del(['dist/*.js']);

});

[12:54:07] Using gulpfile 

[12:54:07] Starting 'clean'...

[12:54:07] Finished 'clean' after 4.

我在回调函数中做错了什么?

问候。

4

2 回答 2

2

del本身返回一个承诺,所以如果你想将它与回调一起使用,你必须执行以下操作:

del(['dist/*.js']).then(function(paths) {
    cb(paths);
});

或者:

del(['dist/*.js']).then(cb);

路径是已删除文件夹/文件的数组。

还有 del.sync,它不返回承诺,而是返回一组已删除的文件夹/文件。

于 2015-09-25T16:16:33.687 回答
1

del node.js 模块不接受任何回调函数作为参数。

查看 npmjs.com 上的文档以获取更多详细信息: https ://www.npmjs.com/package/del

于 2015-09-25T16:05:25.307 回答