早就想要自动自动自动刷新了啊,曾经用grunt实现过,但是是yeoman建好的。。其中很多任务我是用不到的啊,为了干净还是得要自己写啊哈哈(现在我只想要自动刷新)。

  首先node是必须的了~就不说怎么装了。

  然后先建好文件夹,安装gulp和gulp-livereload,执行:

 cnpm install gulp gulp-livereload

  以上用了淘宝镜像,也可以用npm安装,只是个demo,没有package.json,然后创建gulpfile.js,如下:

var gulp = require('gulp'),
livereload = require('gulp-livereload'); gulp.task('watch', function() {
livereload.listen();
gulp.watch('app/**/*.*',function(file){
livereload.changed(file.path);
});
});

  大概意思是监听app文件夹里所有文件,如果有变化就发送给livereload服务器。gulp-livereload原话如下:

livereload.changed(path)

Alternatively, you can call this function to send changes to the livereload server. You should provide either a simple string or an object, if an object is given it expects the object to have a path property.

  再你还要建个app文件夹,然后在里面写个demo.html试试。随便写点~稍后有奇效。然后执行:

gulp watch

  在浏览器上访问localhost:35729(这东西默认的端口),会看到:

{
  "tinylr": "Welcome",
  "version": "0.1.6"
}

  但其实并没什么x用哈哈哈~~不管怎么折腾路径还会告诉你no such route啊!

{
  "error": "not_found",
  "reason": "no such route"
}

  是!因!为!。。看github的grunt问答环节原话:

The livereload in this task only handles livereloading. It doesn't provide a static file server. You would use grunt-contrib-connect or some other method to serve files (express, restify, jaws, apache, nginx, etc).

The chrome live reload extension will create a connection through a socket to the livereload server this watch task has started on 35729. When the watch task is triggered it informs the livereload server which then through the socket will inform the chrome extension and reload the necessary portions of the page.

I agree though we need better docs explaining this as you're not the first person to get tripped up by this.

  歌词大意是:在这个任务中livereload只处理livereloading,它不提供静态文件服务器。。。提问链接

  所以还需要装个http-server,我应该早点说的。。欧~我好坏喔,这里我全局装啦,像这样:

cnpm install http-server -g

  用npm是可以的。。只要不嫌慢。

  还需要个chrome插件:livereload,这个是真慢。。

  然后关掉之前的gulp watch吧,可以先进到app目录下,其实在项目根目录也是可以de~,执行:

http-server

  然后在项目根目录下继续:

gulp watch

  http-server默认端口是8080,所以可以通过访问localhost:8080找到你要的自动刷新的那个demo文件。再确保已经安装了liveReload插件~点开它,像这样(右边那个刷新里有实心圈):

  然后你就可以尽情的保存保存了~会刷新。。尊的不用F5 || cmd R了。。

  附上DEMO:github地址

刷新拜拜~gulp-livereload的更多相关文章

  1. 浏览器自动刷新——基于Nodejs的Gulp LiveReload与VisualStudio完美结合。

    本文版权桂博客园和作者吴双共同所有,转载和爬虫请注明原文地址 http://www.cnblogs.com/tdws/p/6016055.html 写在前面 大家好我是博客园的蜗牛,博客园的蜗牛就是我 ...

  2. 前端神器!!gulp livereload实现浏览器自动刷新

    首先gulp是基于Node的,所以确保你已经安装 node.js,在Nodejs官方网站下载跟自己操作系统相对应的安装包. 先说一下gulp安装流程: 1:全局安装gulp,操作为: npm inst ...

  3. gulp LiveReload middleware

    用yo搭建的angular项目,用gulp自动化构建. 自动化构建主要的功能大致有: 1. 文件压缩 2. 文件重命名 3. 文件合并 4. css,js文件自动引入到html 5. 自动刷新 ... ...

  4. Gulp livereload

    平时使用yeoman作为前端部署工具,感觉到yeoman构建工具虽然方便,但是速度和大小总是不尽人意. 最近看到了gulp http://gulpjs.com/ 比较感兴趣随动手一试 gulp的安装以 ...

  5. [工具]web开发时自动刷新网页:liveReload

    传统网页开发流程:用sublime text写好代码,运行,发现问题,再回到sublime text修改,运行…如此往复,十分繁琐.今天看到有人(<LiveReload>讓Sublime ...

  6. gulp配置(编译压缩转码自动刷新注释全)

    参考自:http://www.sheyilin.com/2016/02/gulp_introduce/ 在原先基础上增加了less编译 es6转码资源地图等,修改了一部分的热刷新. gulpfile. ...

  7. Gulp真实项目用例

    包括了less预编译,css压缩,html文件include引入,js混淆压缩,本地开发热刷新服务器,html压缩,版本号添加 github地址: gulpfile.js var gulp = req ...

  8. 利用gulp搭建本地服务器,并能模拟ajax

    工作中可能会用到的小工具,在此记录一下.可以实现的功能有: 本地http服务器 页面实时刷新 可以模拟ajax请求 第一步,新建package.json文件.用到了gulp.gulp-webserve ...

  9. gulp入门学习实例

    好久都没有更新博客了,每天繁忙的工作,下班之后都不想开设备了.前段时间有幸学习了一下gulp这款构建工具,现在和大家分享一下. 为什么使用Gulp Gulp基于Node.js的前端构建工具,通过Gul ...

随机推荐

  1. 设置让TortoiseGit记住账号和密码

    方法一:在"C:\Documents and Settings\Administrator\.gitconfig" 文件 或 "项目/.git/config"文 ...

  2. [转载]基于TFS实践敏捷-工作项跟踪

    工作项跟踪(1) 可跟踪性是软件过程的重要能力,TFS主要是以工作项来实现过程的可跟踪性.曾有人问:"你们实际项目里的工作项是怎么样的?能不能让我们看看?"我也一直很好奇别的公司T ...

  3. [java] 汇率换算器实现(3)

    [java] 汇率换算器实现(3) // */ // ]]>   [java] 汇率换算器实现(3) Table of Contents 1 系列文章地址 2 前言 3 提取简单表单信息 3.1 ...

  4. Azure ARM (3) ARM支持的服务类型

    <Windows Azure Platform 系列文章目录> 我们在使用ARM创建资源的时候,首先要确认哪些Azure服务,支持ARM模式. 具体内容,我们可以参考连接:https:// ...

  5. DNS解析全过程及原理

    DNS解析原理及过程. 当用户访问我们网站一个网页时,他需要经过以下步骤: 1)找到这个网页的存放服务器: 2)服务器将用户的请求信息接入: 3)服务器通过文件路径(URL)查找用户请求网页: 4)用 ...

  6. HT for Web基于HTML5的图像操作(一)

    HT for Web独创的矢量图片设计架构,使其具有强大丰富的动态图形呈现能力,但从最近知乎热议的“Adobe Photoshop 是否已经过时?”的话题,大家能体会到很多情况下实际项目不可能完全采用 ...

  7. webAPI 数组参数

    今天终于解决了一个坑的问题. 写了一个接口,调试了好几天都没成功. 一直以为是我的错误,直到我们部门的大牛来告诉我不是我的错误,是前端传参数有问题. 应该是参数是数组参数的问题,可能不好拼接,才导致接 ...

  8. ASP.NET Core 开发-Logging 使用NLog 写日志文件

    ASP.NET Core 开发-Logging 使用NLog 写日志文件. NLog 可以适用于 .NET Core 和 ASP.NET Core . ASP.NET Core已经内置了日志支持,可以 ...

  9. 【iOS】关联属性存取数据

    有时候我们需要在现有的类存放一些额外的信息,通常的做法是继承一个子类,然后定义新增加的属性,然而如果我们为每个需要的类都添加一个类显得太麻烦了,objc提供了一个关联属性的特性,可以给一个对象关联一个 ...

  10. C# 在异步中使用HttpWebRequest出现的“正在终止线程”错误的解决方案

    最近做接口对接,因需求变化需要用到异步推送信息,就利用委托做了异步. 程序运行过程中时不时出现“正在终止线程”的错误信息,导致两边订单信息不一致,代码如下: byte[] byteData = Enc ...