Browser-sync надо иницилизировать в watch`e
const
gulp = require('gulp'),
sass = require('gulp-sass'),
browserSync = require('browser-sync').create(),
cleanCss = require('gulp-clean-css'),
autoprefixer = require('gulp-autoprefixer');
function styles(){
return gulp.src('./src/sass/**/*.sass')
.pipe(sass())
.pipe(autoprefixer({
browsers: ['last 5 versions'],
cascade: false
}))
.pipe(cleanCss({
level: 2
}))
.pipe(gulp.dest('./src/css'))
.pipe(browserSync.stream());
}
function watch(){
browserSync.init({
server: "./"
});
gulp.watch('./src/sass/**/*.sass', styles);
gulp.watch('./*.html').on('change', browserSync.reload);
}
gulp.task('watch', watch);
как-то так...