ошибка броска задачи при повторном запуске - PullRequest
0 голосов
/ 05 февраля 2019

У меня есть две папки, каждая из которых содержит некоторые файлы HTML-шаблонов.Мне нужно уменьшить эти файлы до отдельных папок.

структура папок

|src
|--clientTemplates
|----abc.html
|----xyz.html
|--serverTemplates
|----abc.html
|----xyz.html

необходимая папка назначения

|dist
|--client
|----abc.html
|----xyz.html
|--server
|----abc.html
|----xyz.html

Ниже приведен мой gulpfile, в котором мои задачи определены для

var gulp = require('gulp');
var htmlmin = require('gulp-htmlmin');
var replace = require('gulp-replace');
var del = require('del');
var minOptions = {
    collapseWhitespace: true,
    minifyJS: { output: { quote_style: 1 } },
    minifyCSS: true
};    

gulp.task('clean', function(done) {
    del(['dist'], done());
});

gulp.task('minify:serverTemplates', function() {
    return gulp
        .src('src/serverTemplates/*.html')
        .pipe(htmlmin(minOptions))
        .pipe(replace('\\', '\\\\'))
        .pipe(replace('"', '\\"'))
        .pipe(gulp.dest('dist/server'));
});

gulp.task('minify:clientTemplates', function() {
    return gulp
        .src('src/clientTemplates/*.html')
        .pipe(htmlmin(minOptions))
        .pipe(gulp.dest('dist/client'));
});

gulp.task(
    'default',
    gulp.series('clean', 'minify:serverTemplates', 'minify:clientTemplates', function inSeries(done) {
        done();
    })
);

, когда я запускаю команду gulp, она работает нормально в первый раз, но выдает ошибки при альтернативных запусках.первая команда gulp running gulp command first time- output

вторая команда gulp running gulp command second time- output

не может понять, что именно там не так,Также есть ли способ запустить две задачи минимизации параллельно после завершения чистой задачи?

спасибо за помощь.

1 Ответ

0 голосов
/ 05 февраля 2019

Обратный вызов, который вы передаете del, неверен.Просто верните обещание:

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

Что касается параллельного выполнения задач минификации, используйте gulp.parallel:

gulp.task(
  'default',
  gulp.series(
    'clean',
    gulp.parallel('minify:serverTemplates', 'minify:clientTemplates')
  )
);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...