咕嘟咕嘟的手表不看
以下是我的gulpfile.js。 还有几个任务,所有的工作都很好 – 但最后一个任务, watch
不到。
我已经试过了path和文件的所有可能的组合,但是我仍然没有运气。 我在这里读了很多答案,但是解决不了我的问题。 我试图运行gulp.watch和不需要吞咽手表,尝试了几种不同的方法来设置任务,等等…
var gulp = require('gulp'); var browserify = require('browserify'); var babelify = require('babelify'); var source = require('vinyl-source-stream'); var watch = require('gulp-watch'); gulp.task('application', function() { return browserify('./public/resources/jsx/application.js') .transform(babelify, { stage: 0 }) .bundle() .on('error', function(e){ console.log(e.message); this.emit('end'); }) .pipe(source('appBundle.js')) .pipe(gulp.dest('./public/resources/jsx')); }); gulp.task('watch', function() { gulp.watch('./public/resources/jsx/project/*.js',['application']) });
有人可以提出解决scheme吗?
编辑:
这是控制台输出:
michael@michael-desktop:/opt/PhpstormProjects/app_april_2015$ gulp watch [23:05:03] Using gulpfile /opt/PhpstormProjects/app_april_2015/gulpfile.js [23:05:03] Starting 'watch'... [23:05:03] Finished 'watch' after 13 ms
你应该return
看:
gulp.task('watch', function() { return gulp.watch('./public/resources/jsx/project/*.js',['application']) });
watch
是一个async
方法,所以唯一的办法是Gulp可以知道发生了什么事情,如果你返回一个promise
,哪个手表。
编辑
正如@JMM所说, watch
不会返回承诺。 它返回一个EventEmitter 。