简体   繁体   中英

How can you delete a folder and its contents after all tasks have been run in Gulp?

Here is what I have now, but it is not working. The css folder is not being cleaned out, but no errors are being thrown.

var gulp = require('gulp');
var sass = require('gulp-sass');
var autoprefixer = require('gulp-autoprefixer');
var concat = require('gulp-concat');
var minifyCSS = require('gulp-minify-css');
var del = require('del');

gulp.task('default', ['compile-sass', 'process-css', 'clean-css']);

gulp.task('compile-sass', function () {
    gulp.src('resources/assets/sass/main.scss')

        // Compile Sass
        .pipe(sass({
            includePaths: ['resources/assets/bower/foundation/scss/foundation/components/']
        }))

        // Autoprefix CSS
        .pipe(autoprefixer({
            browsers: ['last 2 versions'],
            cascade: false
        }))

        // Move to Temp Destination
        .pipe(gulp.dest('resources/assets/css'));

});

gulp.task('process-css', ['compile-sass'], function () {
    gulp.src(['resources/assets/css/main.css', 'bower/slick/slick/slick.css'])

        // Concat CSS Files
        .pipe(concat('all.min.css'))

        // Minify CSS
        .pipe(minifyCSS())

        // Move to Final Destination
        .pipe(gulp.dest('public/assets/css/'));

});

gulp.task('clean-css', ['process-css'], function () {

    // Delete Temp Files & Folders
    del(['resources/assets/css/']);

});

I figured it out. I had to return the stream's from the prior tasks to confirm they were completed.

var gulp = require('gulp');
var sass = require('gulp-sass');
var autoprefixer = require('gulp-autoprefixer');
var concat = require('gulp-concat');
var minifyCSS = require('gulp-minify-css');
var del = require('del');

gulp.task('default', ['compile-sass', 'process-css', 'clean-css']);

gulp.task('compile-sass', function () {
    var stream = gulp.src('resources/assets/sass/main.scss')

        // Compile Sass
        .pipe(sass({
            includePaths: ['resources/assets/bower/foundation/scss/foundation/components/']
        }))

        // Autoprefix CSS
        .pipe(autoprefixer({
            browsers: ['last 2 versions'],
            cascade: false
        }))

        // Move to Temp Destination
        .pipe(gulp.dest('resources/assets/css'));

    return stream;

});

gulp.task('process-css', ['compile-sass'], function () {
    var stream = gulp.src(['resources/assets/css/main.css', 'bower/slick/slick/slick.css'])

        // Concat CSS Files
        .pipe(concat('all.min.css'))

        // Minify CSS
        .pipe(minifyCSS())

        // Move to Final Destination
        .pipe(gulp.dest('public/assets/css/'));

    return stream;

});

gulp.task('clean-css', ['process-css'], function () {

    // Delete Temp Files & Folders
    del(['resources/assets/css/']);

});

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM