Delete files and folders – You might want to delete some files before running your build. Since deleting files doesn’t work on the file contents, there’s no reason to use a gulp plugin. An excellent opportunity to use a vanilla node module.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
var gulp = require('gulp'); sass = require('gulp-sass'); // rimraf = require('gulp-rimraf'); // deprecated del = require('del'); var paths = { styles : './src/scss/**/*.scss' }; gulp.task('clean:styles', function () { return del('./css'); }); gulp.task('styles', ['clean:styles'], function () { return gulp.src(paths.styles) .pipe(sass().on('error', sass.logError)) .pipe(gulp.dest('./css')) }); gulp.task('watch', function () { gulp.watch(paths.styles, ['styles']); }); |
Problème:
[15:29:20] ‘styles’ errored after 95 ms
[15:29:20] Error: EEXIST: file already exists, mkdir ‘/home/intlangf/tb/gulp-plugins/dist/css’
at Error (native)
gulp tasks are failing with EEXIST errors (del), Del: Delete files and folders using globs.
Une alternative consite à utiliser del.sync
:
1 2 3 |
gulp.task('clean:styles', function () { del.sync(paths.dist + '/css'); }); |
Autres solutions à envisager
- Gulp recipe – Handling the Delete Event on Watch : fonctionne bien, mais seulement au Watch.
- Plugin Gulp gulp-deleted