Sto lavorando a un corso di pluralight su gulp. John Papa sta dimostrando come iniettare una funzione che cancella i file css esistenti, nella routine che compila quelli nuovi.Comando del nodo - richiamata non attiva
Il callback sulla funzione del non viene attivato. La funzione è in esecuzione, il file viene eliminato, non vedo messaggi di errore. Se chiamo manualmente la callback, viene eseguita, quindi sembra che la funzione sia intatta. Quindi mi chiedo cosa potrebbe causare del non voler eseguire il callback.
eliminare di routine:
function clean(path, done) {
log('cleaning ' + path);
del(path, done); // problem call
}
La funzione di 'fatto' non è sparare, ma lo fa se cambio il codice a questo:
function clean(path, done) {
log('cleaning ' + path);
del(path);
done();
}
Che, naturalmente, sconfigge lo scopo previsto di aspettare fino a quando non viene fatto prima di continuare.
Tutte le idee su ciò che sta accadendo sarebbero apprezzate.
per riferimento (nel caso pertinente):
compilazione funzione css:
gulp.task('styles', ['clean-styles'], function(){
log('compiling less');
return gulp
.src(config.less)
.pipe($.less())
.pipe($.autoprefixer({browsers:['last 2 versions', '> 5%']}))
.pipe(gulp.dest(config.temp));
});
iniettato funzione di pulizia:
gulp.task('clean-styles', function(done){
var files = config.temp + '/**/*.css';
clean(files, done);
});
UPDATE
Se qualcun altro incontra questo, ha rivisitato il traini ng video e stava usando la v1.1 di del. Ho controllato e stavo usando 2.x. Dopo aver installato v 1.1, tutto funziona.
Possibile duplicato di [Gulp clean/del comportamento è cambiato] (http://stackoverflow.com/questions/32605090/gulp-clean-del-behaviour-has-changed) – Louis