Так рассмотрит следующий глоток файл:Глоток Не похож
var gulp = require('gulp');
var source = require('vinyl-source-stream');
var browserify = require('browserify');
var babelify = require("babelify");
var watch = require('gulp-watch');
gulp.task('make:engine', function() {
return browserify({entries: [
'./src/index.js'
]})
.transform("babelify")
.bundle()
.pipe(source('engine.js'))
.pipe(gulp.dest('dist/'));
});
gulp.task('make:example', function() {
return browserify({entries: [
'./examples/index.js'
]})
.transform("babelify")
.bundle()
.pipe(source('compiled-example.js'))
.pipe(gulp.dest('dist/example/'));
});
gulp.task('watch', ['make:engine', 'make:example'], function(){
return watch('*.js', ['make:engine', 'make:example']);
});
gulp watch
выплевывает:
[15:06:01] Using gulpfile ~/Documents/ice-cream-engine/gulpfile.js
[15:06:01] Starting 'make:engine'...
[15:06:01] Starting 'make:example'...
[15:06:03] Finished 'make:example' after 1.57 s
[15:06:03] Finished 'make:engine' after 1.6 s
[15:06:03] Starting 'watch'...
В ЛЮБОМ файле JS, если я делаю редактировать и сохранять файл, терминал Безразлично» t, чтобы сказать, что он делает двигатель или примеры.
каталог проекта выглядит следующим образом:
Что я делаю неправильно таким образом, что он не будет фактически заново скомпилировать на любом изменении JS файл?
Там хороший шанс, что он (по умолчанию) требует NFS (Google это) события, чтобы наблюдать за вместо того, чтобы сканировать все файлы, регулярное выражение соответствует каждые 0.x секунд (что требует гораздо больше процессора). Если ваша ОС (или виртуальная машина) не поддерживает это, вам придется отключить этот параметр. –
@StephanBijzitter Этот ответ не помогает вообще. Я использую MAC OSX, и ваш ответ не предоставляет ничего полезного. – TheWebs
Ну, это немного агрессивно. OSX поддерживает события NFS, поэтому вы там хорошо. Обратите внимание, как Gulp обрабатывает globs, но вы также можете попытаться использовать '**/*. Js' или' src/**/*. Js'. –