Gulp livereload 不适用于 gulp-connect using watch
Gulp livereload doesn't work with gulp-connect using watch
我正在为我的开发服务器使用 gulp-connect
插件,并且我还安装了 gulp-livereload
。然后我做了以下任务:
var gulp = require('gulp'),
connect = require('gulp-connect'),
livereload = require('gulp-livereload');
gulp.task('serve', function() {
connect.server({
root: 'app',
livereload: true
});
});
gulp.task('css', function() {
gulp.src('./app/stylesheets/*.css')
.pipe(connect.reload());
});
gulp.task('html', function() {
gulp.src('./app/index.html')
.pipe(connect.reload());
});
gulp.task('watch', function() {
gulp.watch('./app/stylesheets/*.css', ['css']);
gulp.watch('./app/index.html', ['html']);
});
gulp.task('default', ['serve', 'watch']);
但是每当我 运行 服务器对样式表或 index.html
进行任何更改时,我仍然需要手动刷新页面,尽管我已经根据他们的文档进行了所有操作。我也试过这样写 default
任务:
gulp.task('default', ['serve', 'html', 'css', 'watch']);
但也无济于事。 livereload 有什么问题?
已添加: 当我检查控制台时,它说无法连接到 ws://localhost:35729/livereload
。此外,当我刷新页面时,控制台显示与 ws://localhost:35729/livereload
的连接已中断。这是否意味着 livereload 无法建立正确的连接?
编辑: 虽然我什么也没做,但现在当我更改 .css
文件时,livereload 会自动刷新页面。但是当我更改 index.html
.
时它仍然没有刷新
我非常非常糟糕 -- 我刚刚注意到,在我的原始代码中我有
// ...
gulp.watch('./app/html', ['html']);
而不是上面的线。我修复它后,一切正常!
我正在为我的开发服务器使用 gulp-connect
插件,并且我还安装了 gulp-livereload
。然后我做了以下任务:
var gulp = require('gulp'),
connect = require('gulp-connect'),
livereload = require('gulp-livereload');
gulp.task('serve', function() {
connect.server({
root: 'app',
livereload: true
});
});
gulp.task('css', function() {
gulp.src('./app/stylesheets/*.css')
.pipe(connect.reload());
});
gulp.task('html', function() {
gulp.src('./app/index.html')
.pipe(connect.reload());
});
gulp.task('watch', function() {
gulp.watch('./app/stylesheets/*.css', ['css']);
gulp.watch('./app/index.html', ['html']);
});
gulp.task('default', ['serve', 'watch']);
但是每当我 运行 服务器对样式表或 index.html
进行任何更改时,我仍然需要手动刷新页面,尽管我已经根据他们的文档进行了所有操作。我也试过这样写 default
任务:
gulp.task('default', ['serve', 'html', 'css', 'watch']);
但也无济于事。 livereload 有什么问题?
已添加: 当我检查控制台时,它说无法连接到 ws://localhost:35729/livereload
。此外,当我刷新页面时,控制台显示与 ws://localhost:35729/livereload
的连接已中断。这是否意味着 livereload 无法建立正确的连接?
编辑: 虽然我什么也没做,但现在当我更改 .css
文件时,livereload 会自动刷新页面。但是当我更改 index.html
.
我非常非常糟糕 -- 我刚刚注意到,在我的原始代码中我有
// ...
gulp.watch('./app/html', ['html']);
而不是上面的线。我修复它后,一切正常!