0

我正在尝试让我的 gulp 文件正常工作,但我不确定出了什么问题。这是文件。https://gist.github.com/digilord/9265640我遇到问题的部分是 js:dev。当咖啡脚本文件被更改时,它会将生成的 js 文件放到 app/js 目录中。js:dev 规则没有接受这种变化。谁能告诉我我错过了什么?

4

1 回答 1

0

即时解决方案:gulp-watch 需要 glob 信息来查找新文件。您可以将您的 glob 传递给它的glob option。就像是:

return gulp.src('app/js/*.coffee')
      .pipe(watch({glob: 'app/js/*.coffee'}))

同时,如果您要使用gulp.watch()它,它也不会拾取新文件,而只是因为它的依赖项中存在错误,很快就会修复。

我还必须提到你的 gulpfile 是不必要的复杂。您的咖啡和 js 操作可以在同一个流中,而不是创建中间 js 文件。我也不知道为什么您的某些流重复了两次。保持干燥:

var coffeeGlob = 'app/js/*.coffee';

gulp.task('js:dev', ['clean:dev'], function() {
    return gulp.src(coffeeGlob)
      .pipe(watch({glob: coffeeGlob}))
      .pipe(coffee({bare: true}).on('error', gutil.log))
      .pipe(concat('app.js'))
      .pipe(gulp.dest('build/js'))
      .pipe(reload());
});

正如我在 IRC 上提到的,您基于它的样板可能不是最新的最佳实践,我建议基于Yeoman 的 gulp 生成器的 gulpfile 之类的更新。

于 2014-02-28T13:56:52.167 回答