grunt-contrib-connect自动刷新html页面
grunt-contrib-connect可以在我们开发的时候自动刷新页面,省去了手动刷新的时间。
下面说一下如何配置grunt-contrib-connect
1、下载插件包
npm install grunt-contrib-connect --save-dev
2、在gruntfile.js中引入包
grunt.loadNpmTasks('grunt-contrib-connect');
3、配置connec任务
// The actual grunt server settings
connect: {
options: {
port: 9000, //服务器的端口号,可用localhost:9000访问
// Change this to '0.0.0.0' to access the server from outside.
hostname: 'localhost', //服务器域名
livereload: 35729 //声明给watch监听的端口 },
livereload: {
options: {
open: true, //true:一直打开链接,不然浏览器只打开一次
middleware: function (connect) { //设置服务器中间件,主要用于获取静态文件,不设置中间件,node服务器是没有输出的,和php或java服务器不同
return [ //不懂中间件的可以去看下node.js
serveStatic('.tmp'), //获取tmp目录下的文件
connect().use(
'/bower_components', //设置挂载,如果路径中有/bower_components则会执行这个中间件
serveStatic('./bower_components') //获取bower_components下的文件,主要是bower安装的包 ),
serveStatic('public') //获取public目录下的文件,
]; //这3个中间件主要是从服务器获取展示html要用的东西,比如html文件,js,css,图片等
}
}
}
},
注意在较高版本的grunt-contrib-connect中已经不支持connect.static,需要使用serve-static
4、安装serve-static
cnpm install serve-static --save
在gruntfile.js中引入文件,这个serveStatic就是步骤3中的变量。
module.exports = function(grunt) {
var serveStatic = require('serve-static');
// Project configuration.
grunt.initConfig({
5、用watch监视端口
watch: {
gruntfile: {
files: '<%= jshint.gruntfile.src %>',
tasks: ['jshint:gruntfile']
},
lib_test: {
files: '<%= jshint.lib_test.src %>',
tasks: ['jshint:lib_test', 'qunit']
},
bower: {
files: ['bower.json'],
tasks: ['wiredep']
},
livereload: { //监听connect端口
options: {
livereload: '<%= connect.options.livereload %>'
},
files: [
'public/**/*.html', //html
'public/**/*.css' //css
]
}
}
我这里只设置了public下的html和css变动会通知端口刷新页面
6、设置默认启动任务
grunt.registerTask('default', ['jshint','concat', 'uglify','wiredep', 'connect','watch']);
7、输入命令运行grunt
grunt
这时你的默认浏览器会打开一个标签,显示你设置的.html文件,更改html或css浏览器会自动刷新。
grunt-contrib-connect自动刷新html页面的更多相关文章
- 黄聪:PHP如何实现延迟一定时间后自动刷新当前页面、自动跳转header("refresh:1;url={$url}");
//1秒后自动跳转 header("refresh:1;url={$url}"); exit; //1秒后自动刷新当前页面header("refresh:1;" ...
- button 自动刷新当前页面
button请始终为按钮规定 type 属性.Internet Explorer 的默认类型是 "button",而其他浏览器中(包括 W3C 规范)的默认值是 "sub ...
- Flask自动刷新前端页面(方便调试)livereload
是不是每次调整模板文件,就要停止flask服务器,重启flask服务器,再去浏览器刷新页面? 有没有办法自动完成这3步呢? 安装livereload即可, 仅仅把app.run() 改为下面的例子就可 ...
- fancybox 关闭弹出窗口 parent.$.fancybox.close(); 无反应 fancybox 关闭弹出窗口父页面自动刷新,弹出子窗口前后事件
当我们在父页面使用 fancybox 弹出窗口后,如果想自己手动关闭,则可以 function Cancel() { parent.$.fancybox.close(); } 如果关闭没有反应,最好看 ...
- gulp之压缩合并MD5清空替换加前缀以及自动编译自动刷新浏览器大全
gulp是基于流的前端构件化工具.目前比较火的前端构建化工具还是挺多的,grunt gulp fis3等等. 这个鬼东西有什么用?请参考https://www.zhihu.com/question/3 ...
- 使用livereload实现自动刷新
livereload是一个web开发辅助工具,当我们修改完html.css和js的时候会自动刷新浏览器,解放码农的双手.这样在双屏切图.写js代码的时候会提高很多效率.livereload有很多版本, ...
- PHP 后台定时循环刷新某个页面 屏蔽apache意外停止
PHP 后台定时循环刷新某个页面 如果间隔时间过长的话 会出现apache自动停止的现象.出现的原因则是设置了 <IfModule mpm_winnt_module> ThreadsPe ...
- webpack-dev-server 多入口自动刷新,支持对象
万物的来源~webpack 本身 watch webpack watch 传送门 webpack 可以监听文件变化,当它们修改后会重新编译 watch boolean 启用 Watch 模式.这意味着 ...
- webpack 之 webpack-dev-server自动刷新
watch 首先介绍watch选项,参考这里.可实现相关源文件改变后自动更新bundle.js文件的功能.在配置文件中添加 watch:true 或执行 webpack -w,即可开启watch功能: ...
随机推荐
- (转)Unity3D中移动物体位置的几种方法
1. 简介 在unity3d中,有多种方式可以改变物体的坐标,实现移动的目的,其本质是每帧修改物体的position. 2. 通过Transform组件移动物体 Transform 组件用于描述物体在 ...
- 【java】java反射初探 ——“当类也照起镜子”
反射的作用 开门见山地说说反射的作用 1.为我们提供了全面的分析类信息的能力 2.动态加载类 我理解的“反射”的意义 (仅个人理解) 我理解的java反射机制就是: 提供一套完善而强大的API ...
- Java对象克隆详解
原文:http://www.cnblogs.com/Qian123/p/5710533.html 假如说你想复制一个简单变量.很简单: int apples = 5; int pears = appl ...
- Safe Area Layout Guide
原文:Safe Area Layout Guide Apple在iOS 7中引入了topLayoutGuide和bottomLayoutGuide作为UIViewController属性.它们允许您创 ...
- 学习率 Learning Rate
本文从梯度学习算法的角度中看学习率对于学习算法性能的影响,以及介绍如何调整学习率的一般经验和技巧. 在机器学习中,监督式学习(Supervised Learning)通过定义一个模型,并根据训练集上的 ...
- oracle 常用函数汇总
一.字符函数字符函数是oracle中最常用的函数,我们来看看有哪些字符函数:lower(char):将字符串转化为小写的格式.upper(char):将字符串转化为大写的格式.length(char) ...
- MVC(3DOnLine)开发过程的一些难点以及知识点
1.当修改数据然后保存时,会提示有一行受影响无法保存 @Html.HiddenFor(model => model.UserID) 最好将主键隐藏 也就是不去修改它 原因:修改了主键 然 ...
- 《HelloGitHub》第 18 期
<HelloGitHub>第 18 期 兴趣是最好的老师,HelloGitHub 就是帮你找到兴趣! 简介 分享 GitHub 上有趣.入门级的开源项目. 这是一个面向编程新手.热爱编程. ...
- Java虚拟机-运行时数据区域
Java虚拟机管理的内存包括如图所示的运行时数据区域: 下面分别进行介绍: 1)程序计数器(Program Counter Register) 占用的内存空间比较小,主要作用就是标识当前线程执行的字节 ...
- jquery模板下载网站
jquery模板下载网站 http://www.jqshare.com/