2015-01-13 3 views
2

Я хочу, чтобы задача моего gulp watch выполнялась только один раз, а затем перестала смотреть. Теперь, если я запустил «gulp» из командной строки, задачи watch сохраняют задачу gulp. Мне нужно нажать Ctrl-C, чтобы остановить его.Завершить задачу gulp-watch

ответ

1

при запуске gulp watch, он будет продолжать просмотр изменений файла, пока вы не отмените его с помощью CTRL-C. Я не хочу этого, тогда вы можете сделать отдельную задачу глотки для своего здания.

У вас было бы 2 задания: gulp watch и gulp build. Поскольку сборка не будет запускать задачу просмотра, она прекратится, когда закончится.

Пожалуйста, взгляните на мой проект GitHub, где я делаю такие вещи: skeletonSPA on GitHub. Если вы посмотрите на gulpfile.js, вы увидите, что задача default выполнит задачу build. Задача сборки на своем ходу будет выполнена info, clean, styles, scripts, images, copy, todo; оставляя вас с полной сборкой и рабочим интерфейсом.

После выполнения этих задач он остановится и даст вам фокус в командной строке.

0

Вот очень простой пример GulpFile.js:

var gulp = require('gulp'), 
    watch = require('gulp-watch'), 
    runSequence = require('gulp-sequence'), 
    webpack = require('webpack-stream'); 

gulp.task('webpack', function() { 
    return gulp.src('client/index.js') 
     .pipe(webpack({ 
      output: { 
       filename: 'dist/bundle.js' 
      }, 
      devtool: 'source-map' 
     })) 
     .pipe(gulp.dest('.')); 
}); 

// other tasks 

gulp.task('build', ['webpack', 'other tasks... ']); 

gulp.task('watch', function(callback) { 
    gulp.watch('./client/**/*.js', {}, ['webpack']); 
    // more watches if required 
}); 

gulp.task('default', function(callback) { 
    runSequence('build', 'watch', callback); 
}); 

$ gulp build> будет просто запустить build когда-то, а затем выход.

$ gulp watch> начнет просмотр (ctrl-c для выхода).

$ gulp> будет выполняться build и после того, как это полная она будет работать watch (ctrl-c для выхода).

Примечание: Я использую штекер gulp-sequence, чтобы гарантировать, что при запуске $ gulp сборка будет завершена до того, как начнутся часы.