• 使用browserSync自动刷新


    本篇主要是以 http://www.imooc.com/article/14759 为参考来写的:

    已经整理到github上:https://github.com/Macaulish/gulp-BrowserSync-nodemon

    1,使用 Browsersync 来进行浏览器同步测试

    参考: http://www.browsersync.cn/#install
    1)安装NodeJs,
    2)安装BrowserSync (npm install -g browser-sync)
    3)安装好之后,在控制台中键入:
      browser-sync start --server --files "css/*.css"(切记是双引号)
    这样,当'css/*.css'文件有任何修改,就能看看到浏览器同步变化了。
    ^^^^^^^^^^以上初级教程,具体看文档http://www.browsersync.cn/docs/api/

    2,结合 gulp 使用 Browsersync 

    参考:http://www.imooc.com/article/14759
    1)全局安装gulp (npm install -g gulp); 2)全局安装BrowserSync (npm install -g browser-sync); 3)在项目目录下新建gulpfile.js,然后在gulpfile.js中定义一个任务,启动Browsersync:
    const gulp = require('gulp'); // 调用.create() 意味着你得到一个唯一的实例并允许您创建多个服务器或者代理。 const browserSync = require('browser-sync').create(); // 定义一个服务,任务的名字,该任务所要执行的一些操作 gulp.task('watch',function(){ // 启动Browsersync服务。这将启动一个服务器,代理服务器(proxy)or静态服务器(server) browserSync.init({ //设置监听的文件,以gulpfile.js所在的根目录未起点,如果不在根目录要加上路径,单个文件就用字符串,多个文件就用数组 files:['*.html','css/*.css','js/*.js'], // 启动静态服务器,默认监听3000端口,设置启动时打开的index.html的路径 server:{ baseDir:'./' }, // 在不同浏览器上镜像点击,滚动和表单,即所有浏览器会同步 ghostMode:{ clicks:true, scroll:true }, // 更改控制台前缀 logPrefix:'learning browser-sync in gulp', // browser:['chrome','firefox','iexplore'], // 设置监听时打开的浏览器,下面的设置会同时打开chrome browser:['chrome','iexplore'], // 设置服务监听的端口号 port:8080 }) })
    4)在命令行中键入 gulp watch,执行任务就OK了。

    具体可看:(Browser Reloading)  https://www.browsersync.io/docs/gulp/#gulp-reload

    其中如果不知道.pipe()是什么请看:(readable.pipe(desination[,options]))https://nodejs.org/api/stream.html#stream_readable_pipe_destination_options

    3,Browsersync结合nodemon实现node.js项目全栈刷新

    之前一直在自己做一个基于express框架的项目,用到了supervisor这个调试工具,每次服务器端js代码有修改,都会自动重启node.js,但是浏览器并不会自动刷新,我又想到了Browsersync。

    要把Browsersync引进来 需要一个跟supervisor类似的工具:nodemon.

    相比于supervisor,nodemon的优点包括:更轻量级,内存占用更小。使用更加方便,更容易扩展等。

    在gulp中可以用gulp-nodemon来实现nodemon的功能,那么我们实现全栈刷新的工作就可以分为两步。

    1,用gulp-nodemon启动node.js项目服务器。
    2,在node.js项目启动后启动Browsersync,并监听相关文件的变化

    >>>>>>>>我按照作者这个方法写过之后发现 实现不了,我再找找资料

  • 相关阅读:
    git 回滚到某个历史版本
    java值传递与引用传递
    Spring的事务管理
    MySql安装详细图解 以及卸载不干净解决方法
    如果你决定要出发,那么旅行中最困难的部分已经结束,出发吧!
    微信小程序总是提醒安装X5内核
    使用vuerouter实现返回
    手机上测试
    H5移动端知识点总结
    微信小程序授权问题
  • 原文地址:https://www.cnblogs.com/aiyr/p/7988116.html
Copyright © 2020-2023  润新知