• gulp + browserSync 一起提高前端开发效率吧!


    前端开发的时候,每次修改代码后,要移动鼠标到浏览器选中再刷新查看效果,不知觉间我们的加班的时间又增加了0.5s, 真是罪孽!所以在使用gulp之后,就一直对能自动监听文件刷新页面的browserSync插件虎视眈眈。在这里简单的介绍一下用法,只需要五步,希望对大家有所帮助。

    browserSync是一款浏览器同步测试工具,可以单独使用,也可以插入在gulp、grunt等工作流里使用。点击官网了解更多。
    Gulp + browserSync文档
    Grunt + browserSync文档

    step1: 在gulp中安装插件

    npm install --save-dev browser-sync
    

    step2: 在gulpfile中引入插件

    var browserSync = require('browser-sync').create();
    var reload = browserSync.reload;
    

    step3: 启动browserSync任务,设置参数

    browserSync之所以能实现多终端自动刷新测试,是因为他在你的局域网 IP 创建一个本地服务器,生成一个类似http://10.189.249.135:3002 的 URL,这样所有与你电脑处在一个局域网的设备,都可以访问到你本地的页面。

    // 创建一个静态服务器
    gulp.task('browser-sync', function() {
        browserSync.init({
            server: {
                baseDir: "./"
            }
        });
    });
    
    //在原有服务器中代理
    gulp.task('blowser-sync', function() {
        browserSync.init({
            proxy:"localhost"  //"你的域名或IP"
        });
    });
    
    //注意,要在运行需要运用到blowser-sync的任务前,运行他的启动任务。
    gulp.task('default',['blowser-sync', 'build:css', 'watch']);
    

    step4: 在文件流里插入

    以下是一个编译处理css文件的任务,我们希望在每次文件生成后自动刷新页面。js文件同理。

    gulp.task('build:css', function() {
        gulp.src(['../css/less/*.less'])  //引入文件
            .pipe(less().on('error', function (e){
                console.error(e.message);
                this.emit('end');
            }))
            .pipe(minifycss())
            .pipe(gulp.dest('../css/'))
            .pipe(reload({stream: true}));    // 在需要的地方插入reload(自动刷新)命令
    });
    

    step5: 监听html文件

    gulp.watch('../views/*/*').on('change', reload);
    

    到这里,整个插件配置就完成啦。每次运行gulp,终端会提示浏览器通过browserSync访问的网址,如下:(除了自动刷新功能外,browserSync还可以实现多终端同步操作。果然是我最爱的同步测试工具0)。

    [BS] Access URLs:
     --------------------------------------
           Local: http://localhost:3000        //在本机上访问的url
        External: http://192.168.3.101:3000   //在其他终端上访问的url
     --------------------------------------
              UI: http://localhost:3001
     UI External: http://192.168.3.101:3001
     --------------------------------------
  • 相关阅读:
    ASP.NET 身份验证机制
    ASP.NET 一般处理程序下载
    [c、c++]宏中"#"和"##"的用法(zz)
    XML 链接语言(XLink) 版本 1.0
    网上看到的对个人发展很不错的话
    【分享】WebForm中DataGrid的20篇经典文章
    Ajax
    ISO/OSI网络体系结构
    经典推荐.Net面试法宝(面试题收集)
    Union的问题
  • 原文地址:https://www.cnblogs.com/daisykoo/p/5678489.html
Copyright © 2020-2023  润新知