Gulp常用插件集合

0、前言

  当下最热门的前端构建工具当属gulp和webpack,所谓“工欲善其事,必先利其器”,一个好的构建工具能大大提升开发效率,而好的构建工具往往是由一系列插件组合而成,本篇记录gulp常用插件。

1、gulp常用API

  • gulp.src(globs[, options])
    注意:
    1. globs是字符串或数组,表示待处理文件的路径,注意该路径相对于gulpfile.js所在位置;
    2. globs写法中,“app/**/*.js”表示app目录下的任意子目录下的后缀为js的所有文件;
    3. options配置中最常用的是base:'somedir',指定与不指定base的区别在于处理后的文件的位置。请看下图:


      base的作用

      指定了base,那么在build中构建后的文件目录结构跟somedir的目录结构相同

  • gulp.dest(path[,options])
    注意:
    1. path可以是路径字符串或函数,当是函数时,该函数必须返回字符串;
    2. options中可以配置cwd和mode,用的不多。
  • gulp.task(name[, deps], fn)
    1. deps数组,表示前置依赖的任务,即在运行name任务之前运行的任务,一般这些任务是异步的(使用一个 callback,或者返回一个 promise 或 stream),大部分情况下是使用返回stream的形式来实现异步,更多信息
      stream实现异步
  • gulp.watch(glob [, opts], tasks) 或 gulp.watch(glob [, opts, cb])
    监听文件,一旦文件发生改变就会执行tasks数组中指定的任务,或者执行cb函数,并触发watcher的change事件

2、gulp简单插件

  • gulp-imagemin 压缩图片
  • gulp-sass 将scss文件转为css
  • gulp-postcss 与autoprefixer配合使用
  • gulp-open 默认浏览器打开指定页面
  • gulp-htmlmin 最小化html文件
  • gulp-minify-css 最小化css(gulp-clean-css也是)
  • gulp-uglify 混淆js文件
  • gulp-concat 合并js,css文件

3、复杂插件

  • gulp-replace 对指定文件内容进行替换,可以用正则
  • gulp-usemin 将html中外链的css和js文件
  • gulp-zip 将文件打包成zip
  • gulp-sequence 串行执行任务,相对于gulp.task中依赖的任务是并行执行的
  • gulp-rev-all 对js或css文件加MD5戳,缓存用

4、其他node模块

  • del 删除指定目录下所有文件
  • autoprefixer 自动加浏览器前缀
  • browser-sync 文件内容变化浏览器自动刷新
  • yargs 处理node命令传入的参数
  • cross-env 跨platform的命令处理,用法:cross-env NODE_ENV=production webpack --config build/webpack.config.js,若不加cross-env,window系统下报错

5、注意点

场景:任务A依赖任务B,C

  • 1、前置任务B,C是并发执行的
  • 2、前置任务B,C执行完毕后才开始执行A
  • 3、若想让B,C串行执行,可使用插件gulp-sequ
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,294评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,780评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,001评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,593评论 1 289
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,687评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,679评论 1 294
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,667评论 3 415
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,426评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,872评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,180评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,346评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,019评论 5 340
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,658评论 3 323
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,268评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,495评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,275评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,207评论 2 352

推荐阅读更多精彩内容