browserSync运行良好,但是没有重新加载sass,并且我看不到更改在浏览器中自动重新加载。 基本上,当我在终端中重新运行gulp start时,它不会重新加载。我正在使用Gulp 4,这是我的index.js。
帮帮我 谢谢!
gulp.task('style', () => {
console.log('execute sass file');
return gulp.src('src/assets/scss/styles.scss')
.pipe(rename('css/styles.css'))
.pipe(gulp.dest('dist/css'));
});
gulp.task('index', () => {
console.log('execute twig');
return gulp.src('src/markup/index.twig')
.pipe(rename('html/index.html'))
.pipe(gulp.dest('dist/html'))
});
gulp.task('twig', function() {
return gulp.src('src/markup/*.twig')
.pipe(twig())
.pipe(gulp.dest('dist/html'))
.pipe(browserSync.reload({
stream: true
}))
});
gulp.task('sass', function () {
return gulp.src('src/assets/scss/*.scss')
.pipe(sass())
.pipe(gulp.dest('dist/css'))
.pipe(browserSync.reload({
stream: true
}))
});
gulp.task('watch', function() {
gulp.watch('src/assets/scss/**/*.scss', gulp.task('style'));
gulp.watch('src/markup/index.twig', gulp.task('twig'));
console.log('task twig and sass works');
gulp.watch('src/markup/*.twig', browserSync.reload);
gulp.watch('src/assets/scss/*.scss', browserSync.reload);
});
gulp.task('browser-sync', () => {
browserSync.init({
server: {
baseDir: 'dist/html/',
browser:"google chrome",
open: true,
}
});
});
gulp.task('start', gulp.parallel('browser-sync','twig', 'sass', 'watch'));
答案 0 :(得分:0)
更改自:
gulp.watch('src/assets/scss/**/*.scss', gulp.task('style'));
到
gulp.watch('src/assets/scss/**/*.scss', gulp.series('style'));
您也想对twig
任务执行此操作。