installing descargar cli gulp gulp-watch

descargar - gulp watch sass



¿Cómo canalizar a otra tarea en Gulp? (2)

Si observa la fuente del orquestador, particularmente la implementación de .start() verá que si el último parámetro es una función, la tratará como una devolución de llamada.

Escribí este fragmento para mis propias tareas:

gulp.task( ''task1'', () => console.log(a) ) gulp.task( ''task2'', () => console.log(a) ) gulp.task( ''task3'', () => console.log(a) ) gulp.task( ''task4'', () => console.log(a) ) gulp.task( ''task5'', () => console.log(a) ) function runSequential( tasks ) { if( !tasks || tasks.length <= 0 ) return; const task = tasks[0]; gulp.start( task, () => { console.log( `${task} finished` ); runSequential( tasks.slice(1) ); } ); } gulp.task( "run-all", () => runSequential([ "task1", "task2", "task3", "task4", "task5" ));

Intento SECAR mi gulpfile. Allí tengo una pequeña duplicación de código con la que no me siento cómodo. ¿Cómo se puede mejorar esto?

gulp.task(''scripts'', function() { return gulp.src(''src/scripts/**/*.coffee'') .pipe(coffeelint()) .pipe(coffeelint.reporter()) .pipe(coffee()) .pipe(gulp.dest(''dist/scripts/'')) .pipe(gulp.src(''src/index.html'')) // this .pipe(includeSource()) // needs .pipe(gulp.dest(''dist/'')) // DRY }); gulp.task(''index'', function() { return gulp.src(''src/index.html'') .pipe(includeSource()) .pipe(gulp.dest(''dist/'')) });

Obtuve el index como una tarea separada, ya que necesito ver src/index.html para livereload. Pero también estoy viendo mis fuentes de .coffee y cuando cambian, necesito actualizar src/index.html también.

¿Cómo puedo canalizar para index en scripts ?


gulp permite ordenar una serie de tareas basadas en argumentos.

Ejemplo:

gulp.task(''second'', [''first''], function() { // this occurs after ''first'' finishes });

Pruebe el siguiente código, ejecutará el ''índice'' de la tarea para ejecutar ambas tareas:

gulp.task(''scripts'', function() { return gulp.src(''src/scripts/**/*.coffee'') .pipe(coffeelint()) .pipe(coffeelint.reporter()) .pipe(coffee()) .pipe(gulp.dest(''dist/scripts/'')); }); gulp.task(''index'', [''scripts''], function() { return gulp.src(''src/index.html'') .pipe(includeSource()) .pipe(gulp.dest(''dist/'')) });

El index tareas ahora requerirá que los scripts se completen antes de ejecutar el código dentro de su función.