【发布时间】:2018-11-14 10:19:27
【问题描述】:
在我的项目中,我使用 gulp + browsersync。更新 gulp v.4.0.0. 后,browsersync 不起作用,并且我的样式在 watch 运行时没有编译(仅在手动重启后 gulp watch)。
这是我的 gulpfile.js:
var gulp = require('gulp'),
sass = require('gulp-sass'),
browserSync = require('browser-sync'),
concat = require('gulp-concat'),
uglify = require('gulp-uglifyjs'),
cssnano = require('gulp-cssnano'),
rename = require('gulp-rename'),
del = require('del'),
imagemin = require('gulp-imagemin'),
pngquant = require('imagemin-pngquant'),
autoprefixer = require('gulp-autoprefixer');
gulp.task('sass', function(){
return gulp.src('app/scss/**/*.scss')
.pipe(sass())
.pipe(autoprefixer(['last 15 versions', '> 1%'], {cascade: true}))
.pipe(cssnano())
.pipe(rename({suffix: '.min'}))
.pipe(gulp.dest('css'))
.pipe(browserSync.reload({stream: true}))
});
gulp.task('css-libs', gulp.parallel('sass'), function(){
return gulp.src('app/css/main.css')
.pipe(cssnano())
.pipe(rename({suffix: '.min'}))
.pipe(gulp.dest('app/css'));
});
gulp.task('browser-sync', function(){
browserSync({
server: {
//baseDir: 'app'
baseDir: './'
},
notify:false
})
});
gulp.task('watch', gulp.parallel('browser-sync', 'css-libs'), function(){
gulp.watch('app/scss/*.scss', ['sass']);
gulp.watch('*.html', browserSync.reload);
});
如何解决?
UPD
这是我的package.json
当我 change scss file 时 Gulp-watch 不工作。
【问题讨论】:
-
最好能提供完整的信息。包括您的 package.json 和您收到的错误消息。见stackoverflow.com/help/mcve
-
@JacobGoh 我没有错误。它工作正常,但 gulp-watch 不工作。我更新我的问题
-
你解决了吗?
-
@CodeGust 不,我回到以前的版本
标签: javascript gulp browser-sync gulp-watch gulp-sass