3

所以我使用gulp.js来管理和自动化一些任务,我有一个特定的任务styles将我的 scss 文件编译成 css 和另一个使用gulp -connect插件运行服务器,该插件提供 livereload 集成。

我还有一个任务watch是观察我的变化并触发 livereload。

gulp.task('watch', function () {
  gulp.watch([ stylesPath + '/**/*.scss'], ['styles']);
  gulp.watch([ scriptsPath + '/**/*.coffee'], ['scripts']);
  gulp.watch([
    './app/**/*.html',
    './app/assets/scripts/**/*.js',
    './app/assets/styles/**/*.css'
  ], connect.reload);
});

这并不总是有效,实际上它的工作次数少于次数。我真的不知道为什么。我的 .coffee 文件具有相同的逻辑,并且对它们非常有效。但不适用于我的 css 文件。

下面是另一个相关的任务。

gulp.task('connect', connect.server({
  root: './app',
  port: 1337,
  livereload: true,
  open: {
    file: 'index.html',
    browser: 'Google Chrome'
  }
}));

gulp.task('styles', function () {
  gulp.src('.sass-cache').pipe(clean({read:false}));
  return gulp.src(stylesPath + '/**/*.scss')
  .pipe(sass())
  .pipe(autoprefixer('last 2 version', 'safari 5', 'ie 8', 'ie 9', 'opera 12.1', 'ios 6', 'android 4'))
  .pipe(gulp.dest(stylesPath));
});
4

2 回答 2

3

实际上,这是我的一个令人尴尬的错误。

由于错误,我在 html 文件中包含了两次样式表,由于某种原因,这停止了 livereload 的工作。

于 2014-02-12T18:42:44.893 回答
2

坦率地说,我认为这没有什么问题。

最好在 Gulp github 页面上报告这个。可能是某种错误。https://github.com/gulpjs/gulp

于 2014-02-11T13:19:25.133 回答