Gulp Zip отсутствует некоторые файлы в папке

Я хочу создать zip из всех файлов и папок в папке /dist.

У меня есть структура папок, как:

/dist 
    /audio/
    /css/
    /icons/
    /js/
    /libs/
    /locales/en-US
    /locales/mr
    /locales/hi
    /locales/te
    /locales/fr

Я в основном хочу использовать gulp-zip, чтобы сжать всю мою папку / подпапку и подпапки и сохранить zip внутри нее. Вот что я делаю:

var bases = {
    app: 'app/',
    dist: 'dist/',
};    
gulp.task('zip', function () {
        return gulp.src(bases.dist + '**')
            .pipe(using())
            .pipe(zip('buildTest.zip'))
            .pipe(gulp.dest('./' + bases.dist));
    });

с этим я могу создать buildTest.zip, но он не включает все подпапки из /locales.Please советы.

1 ответ

Решение

Gulp выполняет задачи зависимостей в асинхронном режиме, насколько это возможно, поэтому вместо использования zip в качестве задачи зависимостей сделайте задачу zip зависимой от задачи сборки и задайте задачу zip по умолчанию, как указано ниже

const gulp = require('gulp');
const zip = require('gulp-zip');

gulp.task('build', ['copyAssets', 'minify-js', 'minify-css']);

gulp.task('zip', ['build'], function() {
    gulp.src('dist/**')
        .pipe(zip('archive.zip'))
        .pipe(gulp.dest('./'))
});

gulp.task('default', ['clean'], function () {
  gulp.start('zip');
});
Другие вопросы по тегам