gulp - connect
Gulp plugin to run a webserver (with LiveReload)
Install
npm can help us to install the plugin.
PS C:\study\gulp> npm install --save-dev gulp-connect
gulp-connect@2.2. node_modules\gulp-connect
├── connect-livereload@0.3.
├── event-stream@3.1. (duplexer@0.1., from@0.1., stream-combiner@0.0., pause-stream@0.0., map-stream@0.1., split@0.2., through@2.3.)
├── tiny-lr@0.0. (debug@0.8., qs@0.5., faye-websocket@0.4., noptify@0.0.)
├── gulp-util@2.2. (lodash._reinterpolate@2.4., minimist@0.2., vinyl@0.2., through2@0.5., chalk@0.5., multipipe@0.1., dateformat@1.0., lodash.template@2.4.)
└── connect@2.17. (parseurl@1.0., response-time@1.0., cookie@0.1., cookie-signature@1.0., fresh@0.2., debug@0.8., connect-timeout@1.1., vhost@1.0., qs@0.6., bytes@1.0., basic-auth-connect@1.0., on-headers@0.0., serve-favicon@2.0., errorhandler@1.0., morgan@1.1., cookie-parser@1.1., pause@0.0., type-is@1.2., method-override@1.0., compression@1.0., body-parser@1.2., express-session@1.2., csurf@1.2., serve-index@1.0., serve-static@1.1., multiparty@.
2.0)
you can saw the connect-livereload already contained.
Usage
we get a connect object, it help us to serve static web server. default, the web server root is the location of gulpfile.js.
create a js file, named to gulpfile.js, it is the specification name for gulp.
var gulp = require('gulp'),
connect = require('gulp-connect');
gulp.task('connect', function() {
//
connect.server();
});
gulp.task('default', ['connect']);
open browser that your favorited, locate to http://localhost:8080/
default, it support ditionary browser, so you should saw the dictionary.

LiveReload
you should use watch feature with livereload, so you will create watch task for it.
in watch task, when file changed, watch task trigger specification task, in below, it is html task.
var gulp = require('gulp'),
connect = require('gulp-connect');
gulp.task('connect', function() {
connect.server({
root: 'app',
livereload: true
});
});
gulp.task('html', function () {
gulp.src('./app/*.html')
.pipe(connect.reload());
});
gulp.task('watch', function () {
gulp.watch(['./app/*.html'], ['html']);
});
gulp.task('default', ['connect', 'watch']);
in html task, we reload target files.
Start and stop server
connect.server start the web server, connect.serverClose to close a web server.
gulp.task('jenkins-tests', function() {
connect.server({
port: 8888
});
// run some headless tests with phantomjs
// when process exits:
connect.serverClose();
});
Multiple server
var gulp = require('gulp'),
stylus = require('gulp-stylus'),
connect = require('gulp-connect');
gulp.task('connectDev', function () {
connect.server({
root: ['app', 'tmp'],
port: 8000,
livereload: true
});
});
gulp.task('connectDist', function () {
connect.server({
root: 'dist',
port: 8001,
livereload: true
});
});
gulp.task('html', function () {
gulp.src('./app/*.html')
.pipe(connect.reload());
});
gulp.task('stylus', function () {
gulp.src('./app/stylus/*.styl')
.pipe(stylus())
.pipe(gulp.dest('./app/css'))
.pipe(connect.reload());
});
gulp.task('watch', function () {
gulp.watch(['./app/*.html'], ['html']);
gulp.watch(['./app/stylus/*.styl'], ['stylus']);
});
gulp.task('default', ['connectDist', 'connectDev', 'watch']);
API
options.root
Type: Array or String Default: Directory with gulpfile
The root path
options.port
Type: Number Default: 8080
The connect webserver port
options.host
Type: String Default: localhost
options.https
Type: Boolean Default: false
options.livereload
Type: Object or Boolean Default: false
options.livereload.port
Type: Number Default: 35729
options.fallback
Type: String Default: undefined
Fallback file (e.g. index.html)
options.middleware
Type: Function Default: []
gulp.task('connect', function() {
connect.server({
root: "app",
middleware: function(connect, opt) {
return [
// ...
]
}
});
});
Contributors
AveVlad and schickling
gulp - connect的更多相关文章
- gulp connect.static is not a function
npm install --save serve-static var serveStatic = require('serve-static');
- 前端打包构建工具gulp快速入门
因为之前一直有人给我推荐gulp,说他这里好哪里好的.实际上对我来说够用就行.grunt熟悉以后实际上他的配置也不难,说到效率的话确实是个问题,尤其项目大了以后,目前位置遇到的项目都还可以忍受.不过不 ...
- gulp启动一个小型web服务器配置&browserify(require)
var gulp = require('gulp'), connect = require('gulp-connect'), // 运行live reload服务器 browserify = requ ...
- Gulp实现web服务器
Gulp实现web服务器 阅读目录 一:gulp实现web服务器配置: 二:添加实时刷新(livereload)支持 回到顶部 一:gulp实现web服务器配置: 对于前端开发而言,需要在本地搭建一个 ...
- 使用gulp插件来自动刷新页面。
http://itakeo.com/blog/2016/05/19/gulpreload/?none=123 使用gulp插件来自动刷新页面.再也不用修改一次,按一下F5了. 首选通过npm inst ...
- gulp api
gulp api 简介 gulp是前端开发过程中对代码进行构建的工具,是自动化项目的构建利器:它不仅能对网站资源进行优化,而且在开发过程中很多重复的任务能够使用正确的工具自动完成 gulp是基于Nod ...
- Gulp实现服务器
Gulp实现web服务器 Gulp实现web服务器 阅读目录 一:gulp实现web服务器配置: 二:添加实时刷新(livereload)支持 回到顶部 一:gulp实现web服务器配置: 对于前端开 ...
- Angular企业级开发(6)-使用Gulp构建和打包前端项目
1.gulp介绍 基于流的前端自动化构建工具,利用gulp可以提高前端开发效率,特别是在前后端分离的项目中.使用gulp能完成以下任务: 压缩html.css和js 编译less或sass等 压缩图片 ...
- gulp点滴
var gulp = require('gulp'), connect = require('gulp-connect'), browserify = require('gulp-browserify ...
随机推荐
- Oracle备份与恢复之exp/imp
获取帮助 exp help=y/imp help=y 工作方式 交互式 exp 命令行 exp user/pwd@dbname file=/oracle/test.dmp full=y 参数文件方式 ...
- [nginx]Nginx禁止访问robots.txt防泄漏web目录
关于robots.txt文件:搜索引擎通过一种程序robot(又称spider),自动访问互联网上的网页并获取网页信 息.您可以在您的网站中创建一个纯文本文件robots.txt,在这个文件中声明该网 ...
- 08socket编程
有个SO_REUSEADDR值得注意一下: 服务器端尽可能使用SO_REUSEADDR 在绑定之前尽可能调用setsockopt来设置SO_REUSEADDR套接字选项. 使用SO_REUSEADDR ...
- SQL SERVER 2008安装时出现不能在控件上调用 Invoke 或 BeginInvoke错误 解决方法
或者 SQL SERVER 2008安装时要求重启,但重启后仍要求重启.都可以使用此方法. 注册表的 "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet ...
- WinForm窗体拖动代码
本文转载自:http://www.cnblogs.com/ap0606122/archive/2012/10/23/2734964.html using System; using System.Co ...
- Python 共享和上传函数模块到PyPI
1. register account by brower on https://pypi.python.org/pypi/ 2. register your moudle "nester& ...
- android学习笔记九——RatingBar
RatingBar==>星级评分条 RatingBar和SeekBar十分相似,它们甚至有相同的父类:AbsSeekBar.两者都允许用户通过拖动来改变进度: 两者最大的区别在于RatingBa ...
- 重复ID的记录,只显示其中1条
--重复ID的记录,只显示其中1条 --生成原始表 select * into #tempTable from ( select '1' as id ,'a' as name union all se ...
- java ScriptEngine 使用 (支持JavaScript脚本,eval()函数等)
Java SE 6最引人注目的新功能之一就是内嵌了脚本支持.在默认情况下,Java SE 6只支持JavaScript,但这并不以为着Java SE 6只能支持JavaScript.在Java SE ...
- SecureCRT自动登录