【发布时间】:2018-10-25 16:08:51
【问题描述】:
BrowserSync 可以正确刷新我正在修改的任何 PHP 页面、SCSS 或 JS。但对于 HTML 文件,它不会刷新任何内容。为什么不呢?
注意我的gulpfile.js 嵌套在它自己的子文件夹/gulp/ 中,这是它的内容:
var gulp = require('gulp');
var sass = require('gulp-sass');
var browserSync = require('browser-sync').create();
var autoprefixer = require('gulp-autoprefixer');
var plumber = require('gulp-plumber');
var onError = function (err) {
console.log('An error occurred:', gutil.colors.magenta(err.message));
gutil.beep();
this.emit('end');
};
gulp.task('sass', function() {
return gulp.src('../assets/styles/**/*.scss')
.pipe(plumber({ errorHandler: onError }))
.pipe(sass())
.pipe(autoprefixer())
.pipe(gulp.dest('../dist/styles'))
.pipe(browserSync.reload({stream: true}))
});
gulp.task('js', function() {
return gulp.src(['../assets/scripts/*.js'])
.pipe(gulp.dest('../dist/scripts'))
.pipe(browserSync.reload({
stream: true
}))
});
gulp.task('browserSync', function() {
browserSync.init({
proxy: 'http://127.0.0.1/vuejs/',
})
})
gulp.task('watch', ['browserSync','js','sass'], function() {
gulp.watch('../assets/styles/**/*.scss',['sass']);
gulp.watch('../**/**/*.php', browserSync.reload);
gulp.watch('../**/**/*.html', browserSync.reload);
gulp.watch('../assets/scripts/*.js', ['js']);
});
【问题讨论】:
-
请提供一个示例项目。另外请说明您在哪个操作系统上使用它?
标签: gulp browser-sync