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自体は promise を返すため、コールバックで使用したい場合は、次のようにする必要があります。

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

または:

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

削除されたフォルダー/ファイルの配列であるパス。

del.sync もあります。これは promise ではなく、削除されたフォルダー/ファイルの配列を返します。

于 2015-09-25T16:16:33.687 に答える
1

del node.js モジュールは、コールバック関数をパラメーターとして受け入れません。

詳細については、npmjs.com のドキュメントを確認してください: https://www.npmjs.com/package/del

于 2015-09-25T16:05:25.307 に答える