За исключением этого: недавно начал использовать Gulp (конвертировать из Grunt), и я пытаюсь использовать задачу Gulp default watch (не gulp-watch от npm) для SASS/JS/HTML и gulp-nodemon (от npm), чтобы перезапустить Express сервер при изменениях. При работе с просто gulp watch
, он отлично работает; и при запуске gulp server
gulp (для nodemon), который работает нормально. Однако, используя совместно (см. Ниже в настройке задачи по умолчанию), часы не работают. Задача запущена, а на экране CLI gulp отображаются "Запуск" и "Готово" для задач просмотра, но файлы не обновляются.
Соответствующие конфигурации задач:
Concat javascript:
gulp.task('js:app', function(){
return gulp.src([
pathSource('js/application/modules/**/*.js'),
pathSource('js/application/_main.js')
])
.pipe(concat('application.js'))
.pipe(gulp.dest('./build/assets/js')).on('error', utils.log);
});
Nodemon, перезапустите изменения для экспресс-приложения:
gulp.task('express', function(){
return nodemon({script:'server.js', ext:'js', cwd: __dirname + '/express', legacyWatch: true})
.on('restart', function(){
//gulp.run('watch'); // doesn't work :(
});
});
Просмотрите изменения javascript и запустите js: app для concat'ing.
gulp.task('watch', function(){
gulp.watch(pathSource('js/application/**/*.js'), ['js:app']);
});
Задача по умолчанию, чтобы одновременно инициализировать часы gulp и nodemon:
gulp.task('default', ['watch', 'express']);
Если у кого есть идеи, спасибо заранее!