GULP Watch任务的问题。从PUG编译index.html后,Gulp监视任务不刷新浏览器

时间:2017-06-05 18:33:12

标签: javascript gulp pug gulp-watch gulp-browser-sync

我需要帮助完成我的gulp任务。

从PUG编译index.html后,Gulp监视任务不会刷新浏览器。

这是我的watch.js

var gulp = require('gulp'),
    watch = require('gulp-watch'),
    browserSync = require('browser-sync').create();


gulp.task('watch', function(){
    browserSync.init({
        notify: false, 
        server: {
            baseDir: "app"
        } 
    });

    watch('./app/index.html', function(){
        browserSync.reload();
    });

    watch('./app/assets/pug/*.pug', function(){
        gulp.start('htmlRefresh');
    });
});

gulp.task('htmlRefresh', ['pug'] ,function(){
    browserSync.reload();
}); 

这是我的pug.js

var gulp = require('gulp'),
    pug =  require('gulp-pug'),
    notify = require('gulp-notify');

gulp.task('pug',function(){
   return gulp.src('./app/assets/pug/*.pug')
   .pipe(pug({ pretty: true }))
   .on('error', notify.onError(function (error) {
    return {
        title: 'Pug',
        message: error.message
    } 
}))
   .pipe(gulp.dest('./app'));
}); 

在输出中,我在文件夹' ./ app / index.html'中编译了HTML代码。监视任务必须重新加载浏览器:

watch('./app/index.html', function(){
    browserSync.reload();
});

但没有任何改变。 错误在哪里?

1 个答案:

答案 0 :(得分:0)

"浏览器的同步"只有标签" body"才有用。当我测试这个Gulp任务时,我尝试了单个html标签,没有。