Browsersync初使用

gulp是一个很好得东东,用好它可以提高开发效率,加快开发速度。但是,前提是用好...如果gulpfile的流程写的有问题,就会导致很头疼的问题,就是每次修改代码,都要build一下,再serve一下,这样就违反了我们刚开始使用gulp的初衷了,使得开发变得繁琐和低效。那么,如何实现实时刷新呢?Browsersync便能实现这样的功能。http://www.browsersync.cn/,这个是它的官网。

好的,下面就动手修改你的gulpfile吧。

首先,先安装

$ npm install browser-sync gulp --save-dev
然后在您的 gulpfile.js 文件里使用它们
    var gulp        = require('gulp');
    var browserSync = require('browser-sync').create();
    var reload = browserSync.reload;

    // 静态服务器
  gulp.task('browser-sync', function() {
    browserSync.init({
        server: "www/build"
        });
    });
这个server是指静态服务器,即项目要运行的路径。一般情况我们使用gulp,会将项目的初始代码迁移到另外一个文件夹中,我这里原本是app文件夹,然后都流到www下的build文件夹下。

然后就是改造scripts,html和sass这三个方法,分别是集成js,集成html,集成css。当然这个不一定,你可以根据自己的需求去改造。
    gulp.task('scripts', function () {
    return gulp.src([你的js文件路径])
        .pipe(concat('all.js'))
        .pipe(gulp.dest('www/build'))
        .pipe(reload({stream: true}));
    });
    gulp.task('sass', function () {
    return gulp.src(你的scss文件路径)
        .pipe(sass())
        .pipe(gulp.dest('www/build/css'))
        .pipe(reload({stream: true}));
    });
    gulp.task('html', function () {
    return gulp.src([你的html文件路径])
        .pipe(gulp.dest('www/build/pages'))
        .pipe(reload({stream: true}));
  })
可以看到,这三个其实都是在最后加了.pipe(reload({stream: true}));
然后按正常不走,我们要clean,build,就像这样
    gulp.task('build', function (cb) {
    runSequence('clean', ['sass', 'indexhtml', 'html', 'lib', 'scripts'], cb)
    });
最后才是执行我们的browserSync,它会自动打开浏览器,就像ionic serve
  gulp.task('serve', function () {

    browserSync.init({
        server: "www/build"
    });

    gulp.watch(src.scss, ['sass']);
    gulp.watch(src.html,['html']);
    gulp.watch(src.js, ['scripts']);
  });
这里,我们使用的是watch,它会实时监听代码的变动,然后再执行相应的任务。这样的话,我们每次执行项目就只需要gulp build,然后再gulp serve就可以了,之后就不用管了,修改了代码,然后保存一下,浏览器就会刷新了。不过建议webstorm设置成ctrl+s保存,而不是自动保存,不然会卡的...
我写了一个简单的demo,如果还有不清楚的话,可以看看,地址是
  git clone https://github.com/hanwolfxue/my-first-gulp.git

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值