Gulp 没看

Gulp Not Watching

因此请考虑以下 gulp 文件:

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 文件中,如果我进行编辑并保存文件,终端不会更新说它正在制作引擎或示例。

项目目录如下:

我做错了什么以至于它实际上不会在任何 JS 文件更改时重新编译?

根据您的屏幕截图,与您传递给 watch 的 glob 匹配的唯一 .js 文件是 gulpfile.js.

如果你想观看srcexample目录下的所有.js个文件,你可以使用以下命令:

gulp.task('watch', ['make:engine', 'make:example'], function(){
  return watch(['src/**/*.js', 'examples/**/*.js'], ['make:engine', 'make:example']);
});