咕嘟咕嘟不观看
问题描述:
所以考虑以下一饮而尽文件:咕嘟咕嘟不观看
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文件更改重新编译?
答
根据你的屏幕截图,唯一的.js
文件与你传递给watch
的glob匹配的是gulpfile.js
。
如果你想观看下src
和example
目录中的所有.js
文件,你可以使用以下命令:
gulp.task('watch', ['make:engine', 'make:example'], function(){
return watch(['src/**/*.js', 'examples/**/*.js'], ['make:engine', 'make:example']);
});
有一个很好的机会,它(默认)需要NFS(谷歌它)事件监视更改,而不是扫描所有文件的正则表达式匹配每0.x秒(这需要更多的CPU)。如果你的操作系统(或虚拟机)不支持这个,你必须禁用该选项。 –
@StephanBijzitter这个答案根本没有帮助。我使用的MAC OSX和你的答案不提供任何有用的。 – TheWebs
好吧,这是一个有点侵略性。 OSX支持NFS事件,所以你很棒。注意确定Gulp如何处理小球,但你也可以尝试使用'**/*。js'或'src/**/*。js'。 –