本篇主要是以 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,并监听相关文件的变化

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

使用browserSync自动刷新的更多相关文章

  1. gulp browser-sync自动刷新插件

    很久没弄gulp了,都快忘了,今天又来温习下browser-sync 自动刷新插件,在安装的时候出现以下提示: $ npm install browser-sync --save-dev> ws ...

  2. gulp+browserSync自动刷新页面

    BrowserSync “Browsersync能让浏览器实时.快速响应您的文件更改(html.js.css.sass.less等)并自动刷新页面.更重要的是 Browsersync可以同时在PC.平 ...

  3. express+gulp+gulp-nodemon+browser-sync自动刷新

    express自动生成项目.不在赘述 1.在项目根目录下新建终端,依次运行如下命令 npm install gulp --save-dev npm install gulp-nodemon --sav ...

  4. gulp自动刷新插件

    gulp自动刷新的插件很多,但是感觉最好用的还是 browser-sync 插件.如果不想用命令行,也可以使用 browser-sync界面工具 先安装 browser-sync 插件: npm in ...

  5. BrowserSync,调试利器--自动刷新(转

    ---恢复内容开始--- 请想象这样一个场面:你开着两个显示器,一边是IDE里的代码,另一边是浏览器里的你正在开发的应用.此时桌上还放着你的手机,手机里也是这个开发中的应用.然后,你新写了一小段代码, ...

  6. gulp+browserSync+nodemon 实现express 全端自动刷新的实践

    学习过程宝宝心里苦,不能怨政府.. 兴趣所致,一直放不下nodejs的学习,时隔多日,又把express捡起来打算重新再学学,一直没什么太大的长进,和实际的项目经验.真的醉了,太懒了. 今天在重新研究 ...

  7. 前端浏览器自动刷新神器:Browsersync

    [安装] 1 npm install -g browser-sync [静态项目使用browsersync] 自己可以去browsersync官网查看,其实使用很简单,总结下就是: 1 browser ...

  8. Browsersync结合gulp和nodemon实现express全栈自动刷新

    Browsersync能让浏览器实时.快速响应你的文件更改(html.js.css.sass.less等)并自动刷新页面.更重要的是 Browsersync可以同时在PC.平板.手机等设备下进项调试. ...

  9. 前端写代码自动刷新神器Browsersync

    Browsersync能让浏览器实时.快速响应您的文件更改(html.js.css.sass.less等)并自动刷新页面. 更重要的是 Browsersync可以同时在PC.平板.手机等设备下进项调试 ...

随机推荐

  1. src/lxml/includes/etree_defs.h:14:31: 致命错误:libxml/xmlversion.h:没有那个文件或目录

    fedora21平台下解决办法:yum install libxml-devel ubuntu下可以使用 apt-get intalll xxxx 如果仍然出现,可以尝试安装这两个包libxslt-d ...

  2. c++ tricks

    1 关于virtual关键字的实验 1.1 在派生类中改变virtual函数访问权限 定义两个类A,B,其中B公有派生于A.A中定义一个private成员虚函数func,B中覆写此函数,但是将其访问权 ...

  3. 21个ui设计技巧,让你的设计不落伍

    1.功能性极简主义 不少移动端APP和网站开始基于极简主义设计风来设计,而极简主义本身并非关注所有的信息,而是通过减少非关键信息来突出特定的内容,它是有着极强的功能性和偏向的.它有着如下的特征: ・简 ...

  4. stl string 使用指定的分隔符分割成数个子字符串

    #include <iostream> #include <vector> #include <string> #include <algorithm> ...

  5. jar 包 的用处 ,dozer、poi、itext 、jxl 、jbarcode 、itextrenderer jquery 效果

    1.dozer 做类型转换的, 新建 xml 文件 描述两个实体的对应关系 ,DozerBeanMapper mapper =new DozerBeanMapper().addMappingFiles ...

  6. servlet填充Response时,数据转换之content-type

    在Http请求中,我们每天都在使用Content-type来指定不同格式的请求信息,但是却很少有人去全面了解content-type中允许的值有多少,这里将讲解Content-Type的可用值. 1. ...

  7. python之BeautifulSoup模块

    # 名称修改(bs4) from bs4 import BeautifulSoup 帮助文档 Beautiful Soup parses a (possibly invalid) XML or HTM ...

  8. java利用递归实现汉诺塔算法

    package 汉诺塔; //引入Scanner包,用于用户输入 import java.util.Scanner; public class 汉诺塔算法 { public static void m ...

  9. 2018.09.08 NOIP模拟 division(状压dp)

    这么sb的题考场居然写挂了2233. 假设n=∏iaiki" role="presentation" style="position: relative;&qu ...

  10. Spring AOP 切面实现操作日志

    创建接口注解日志类 package com.fh.service.logAop; /** * Created by caozengling on 2018/7/21. */ import java.l ...