gulp系列:自动构建及刷新浏览器
2016年3月3日 14:50:15 晴
gulp = require('gulp')
#删除 1、清空目录 常用插件 gulp-clean 、del (nodejs模块)
del = require('del')
#2、文件复制 原生模块gulp,插件:gulp-cpoy
#3、JS压缩 插件:gulp-uglify
uglify = require('gulp-uglify')
#4、CSS压缩 插件:gulp-minify-css,gulp-uncss
minifycss = require('gulp-minify-css')
#去掉无用的css
uncss = require('gulp-uncss')
#5、html压缩
minifyhtml = require('gulp-minify-html')
#6、文件合并 插件:gulp-minify-css,gulp-uncss
concat = require('gulp-concat')
#7、浏览器刷新
browserSync = require('browser-sync').create()
#8 监视 插件:gulp-watch 原生模块:gulp
gulp.task('default', ['clean','server'], ->
)
#9、其他 yargs gulp-notify通知 gulp-util
# run-sequence异步同步执行任务[],[]中括号内为异步,两个括号件为同步
gulp.task('clean', (callback)->
#这种写法比较清晰
# del(['./dest/*.html','./dest/js/.js','./dest/css/**/*.css'], callback)
#比较简洁的写法,类似正则
del('./dest/**/.{html,js.css}', callback)
#注意点:不能使用/dest/css/**这种写法,经过多次测试,这才文件拷贝的时候会发生以下两种错误
# Error: ENOENT: no such file or directory
# Error: EEXIST: file already exists, mkdir
return
)
gulp.task('miniCSS', ->
gulp.src('src/css/*.css')
.pipe(minifycss())
.pipe(gulp.dest('dest/css/'))
return
)
gulp.task('miniJS', ->
gulp.src('src/js/*.js')
.pipe(uglify())
.pipe(gulp.dest('dest/js/'))
)
gulp.task('miniHTML',->
gulp.src('src/*.html')
.pipe(minifyhtml())
.pipe(gulp.dest('dest/'))
)
#// 使用默认任务启动Browsersync,监听JS文件
gulp.task('server', ['miniJS','miniCSS','miniHTML'],->
browserSync.init({
server:{
'baseDir':'./dest/',
}
port:8000
})
gulp.watch("./src/js/*.js", ['miniJS']);
gulp.watch("./src/css/*.css", ['miniCSS']);
gulp.watch("./src/*.html", ['miniHTML'],browserSync.reload).on('change',browserSync.reload)
)
gulp系列:自动构建及刷新浏览器的更多相关文章
- webstorm设置修改文件后自动编译并刷新浏览器页面
转载:http://www.cnblogs.com/ssrsblogs/p/6155747.html 重装了 webstorm ,从10升级到了2016 一升不要紧,打开老项目,开启webpakc-d ...
- webpack+gulp实现自动构建部署
项目结构说明 . ├── gulpfile.js # gulp任务配置 ├── mock/ # 假数据文件 ├── package.json # 项目配置 ├── README.md # 项目说明 ├ ...
- Webpack webpack+gulp实现自动构建部署
http://www.cnblogs.com/sloong/p/5826859.html
- gulp之压缩合并MD5清空替换加前缀以及自动编译自动刷新浏览器大全
gulp是基于流的前端构件化工具.目前比较火的前端构建化工具还是挺多的,grunt gulp fis3等等. 这个鬼东西有什么用?请参考https://www.zhihu.com/question/3 ...
- 前端构建大法 Gulp 系列 (一):为什么需要前端构建
系列目录 前端构建大法 Gulp 系列 (一):为什么需要前端构建 前端构建大法 Gulp 系列 (二):为什么选择gulp 前端构建大法 Gulp 系列 (三):gulp的4个API 让你成为gul ...
- Gulp自动构建Web前端程序
这两天在一个朋友在项目上碰到了一个这样的问题,在运营过程中,用户在浏览器上对某个表单进行数据提交时,需要引入新的平台接口数据的业务,通过评估,开发团队马上修改了相关后台代码和部分的前端脚本代码,通过简 ...
- django 调试 监控文件变化 自动刷新浏览器
问题描述:修改html js py等文件后,自动刷新浏览器,解放F5,提高效率 解决办法:使用gulp,使用bowerSync 关于gulp,可以查看系列教程 关于bowerSync,查看官网 关于结 ...
- 前端自动化之sass实时编译及自动刷新浏览器
gulp livereload实现sass实时编译及浏览器自动刷新 首先gulp是基于Node的,所以确保你已经安装 node.js,在Nodejs官方网站下载跟自己操作系统相对应的安装包. 先说一下 ...
- 前端构建大法 Gulp 系列 (四):gulp实战
前端构建大法 Gulp 系列 (一):为什么需要前端构建 前端构建大法 Gulp 系列 (二):为什么选择gulp 前端构建大法 Gulp 系列 (三):gulp的4个API 让你成为gulp专家 前 ...
随机推荐
- 算法:欧几里得求最大公约数(python版)
#欧几里得求最大公约数 #!/usr/bin/env python #coding -*- utf:8 -*- #iteration def gcd(a,b): if b==0: return a e ...
- Python程序员的进化史
各种程序员所写的阶乘算法代码 # -*- coding: utf-8 -*- #新手程序员(递归) def factorial(x): if x == 0: return 1 else: return ...
- 说说web 2.0生态圈的那些事
先来说一道面试题吧,“说一下,web 2.0 和web 1.0的区别?” 官方的解释是这样的: Web1.0 的主要特点在于用户通过浏览器获取信息,Web2.0 则更注重用户的交互作用,用户既是网站内 ...
- Java集合源码分析(三)LinkedList
LinkedList简介 LinkedList是基于双向循环链表(从源码中可以很容易看出)实现的,除了可以当做链表来操作外,它还可以当做栈.队列和双端队列来使用. LinkedList同样是非线程安全 ...
- java多线程功力
一.操作系统中线程和进程的概念 现在的操作系统是多任务操作系统.多线程是实现多任务的一种方式.多线程编程可以使程序具有两条或两条以上的并发执行线索. 进程是指一个内存中运行的应用程序,每个进程都有自己 ...
- Font Combiner – 自定义网页字体和图标生成工具
Font Combiner 是一个功能丰富的 Web 字体生成工具和字体改进工具,提供字距调整.构造子集.各种提示选项和自定义字体字形组合.您可以生成您自己的自定义字体的格式和文件大小. 另外还有成千 ...
- JS高程2.在HTML中使用Javascript(2)
1.延迟脚本defer 在<script>元素中设置defer属性,相当于告诉浏览器立即下载,但是延迟执行.<script>中的脚本会延迟到浏览器遇到</html> ...
- 运用Gulp压缩文件编译文件。包括css js html image
安装node.js npm 以及安装gulp等方法我就不在这里赘述了. 接下里我主要介绍的是Gulpfile文件里面的配置该如何书写. var gulp = require('gulp');//引 ...
- ie8不兼容rgba的解决
借鉴................. 在调试ie8兼容性的问题时,发现ie8不支持rgba. 关于rgba(),即为颜色设置的方法函数,rgb代表颜色,a代表透明度. 如rgba(0,0,0,0.1 ...
- BASIS--笨办法解决ALV_GRID的列剪切丢失纪录的错误
最近经常有业务人员问及在ALV_grid输出报表中,选择某一列,点击左键,并点击弹出菜单的复制文本,复制出的文本存在丢失 (纪录不少,但部分纪录的文本丢失).该如何解决呢? 后来跟踪代码发现这个命令没 ...