Gulp常用插件集合

0、前言

??當(dāng)下最熱門的前端構(gòu)建工具當(dāng)屬gulp和webpack,所謂“工欲善其事捷雕,必先利其器”,一個好的構(gòu)建工具能大大提升開發(fā)效率壹甥,而好的構(gòu)建工具往往是由一系列插件組合而成救巷,本篇記錄gulp常用插件。

1句柠、gulp常用API

  • gulp.src(globs[, options])
    注意:
    1. globs是字符串或數(shù)組浦译,表示待處理文件的路徑棒假,注意該路徑相對于gulpfile.js所在位置;
    2. globs寫法中精盅,“app/**/*.js”表示app目錄下的任意子目錄下的后綴為js的所有文件帽哑;
    3. options配置中最常用的是base:'somedir',指定與不指定base的區(qū)別在于處理后的文件的位置叹俏。請看下圖:


      base的作用

      指定了base妻枕,那么在build中構(gòu)建后的文件目錄結(jié)構(gòu)跟somedir的目錄結(jié)構(gòu)相同

  • gulp.dest(path[,options])
    注意:
    1. path可以是路徑字符串或函數(shù),當(dāng)是函數(shù)時(shí)粘驰,該函數(shù)必須返回字符串佳头;
    2. options中可以配置cwd和mode,用的不多晴氨。
  • gulp.task(name[, deps], fn)
    1. deps數(shù)組康嘉,表示前置依賴的任務(wù),即在運(yùn)行name任務(wù)之前運(yùn)行的任務(wù)籽前,一般這些任務(wù)是異步的(使用一個 callback亭珍,或者返回一個 promise 或 stream),大部分情況下是使用返回stream的形式來實(shí)現(xiàn)異步枝哄,更多信息
      stream實(shí)現(xiàn)異步
  • gulp.watch(glob [, opts], tasks) 或 gulp.watch(glob [, opts, cb])
    監(jiān)聽文件肄梨,一旦文件發(fā)生改變就會執(zhí)行tasks數(shù)組中指定的任務(wù),或者執(zhí)行cb函數(shù)挠锥,并觸發(fā)watcher的change事件

2众羡、gulp簡單插件

  • gulp-imagemin 壓縮圖片
  • gulp-sass 將scss文件轉(zhuǎn)為css
  • gulp-postcss 與autoprefixer配合使用
  • gulp-open 默認(rèn)瀏覽器打開指定頁面
  • gulp-htmlmin 最小化html文件
  • gulp-minify-css 最小化css(gulp-clean-css也是)
  • gulp-uglify 混淆js文件
  • gulp-concat 合并js,css文件

3、復(fù)雜插件

  • gulp-replace 對指定文件內(nèi)容進(jìn)行替換蓖租,可以用正則
  • gulp-usemin 將html中外鏈的css和js文件
  • gulp-zip 將文件打包成zip
  • gulp-sequence 串行執(zhí)行任務(wù)粱侣,相對于gulp.task中依賴的任務(wù)是并行執(zhí)行的
  • gulp-rev-all 對js或css文件加MD5戳,緩存用

4蓖宦、其他node模塊

  • del 刪除指定目錄下所有文件
  • autoprefixer 自動加瀏覽器前綴
  • browser-sync 文件內(nèi)容變化瀏覽器自動刷新
  • yargs 處理node命令傳入的參數(shù)
  • cross-env 跨platform的命令處理齐婴,用法:cross-env NODE_ENV=production webpack --config build/webpack.config.js,若不加cross-env稠茂,window系統(tǒng)下報(bào)錯

5柠偶、注意點(diǎn)

場景:任務(wù)A依賴任務(wù)B,C

  • 1睬关、前置任務(wù)B诱担,C是并發(fā)執(zhí)行的
  • 2、前置任務(wù)B电爹,C執(zhí)行完畢后才開始執(zhí)行A
  • 3蔫仙、若想讓B,C串行執(zhí)行藐不,可使用插件gulp-sequ
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末匀哄,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子雏蛮,更是在濱河造成了極大的恐慌涎嚼,老刑警劉巖,帶你破解...
    沈念sama閱讀 210,978評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件挑秉,死亡現(xiàn)場離奇詭異法梯,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)犀概,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,954評論 2 384
  • 文/潘曉璐 我一進(jìn)店門立哑,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人姻灶,你說我怎么就攤上這事铛绰。” “怎么了产喉?”我有些...
    開封第一講書人閱讀 156,623評論 0 345
  • 文/不壞的土叔 我叫張陵捂掰,是天一觀的道長。 經(jīng)常有香客問我曾沈,道長这嚣,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,324評論 1 282
  • 正文 為了忘掉前任塞俱,我火速辦了婚禮姐帚,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘障涯。我一直安慰自己罐旗,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,390評論 5 384
  • 文/花漫 我一把揭開白布唯蝶。 她就那樣靜靜地躺著尤莺,像睡著了一般。 火紅的嫁衣襯著肌膚如雪生棍。 梳的紋絲不亂的頭發(fā)上颤霎,一...
    開封第一講書人閱讀 49,741評論 1 289
  • 那天,我揣著相機(jī)與錄音涂滴,去河邊找鬼友酱。 笑死,一個胖子當(dāng)著我的面吹牛柔纵,可吹牛的內(nèi)容都是我干的缔杉。 我是一名探鬼主播,決...
    沈念sama閱讀 38,892評論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼搁料,長吁一口氣:“原來是場噩夢啊……” “哼或详!你這毒婦竟也來了系羞?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,655評論 0 266
  • 序言:老撾萬榮一對情侶失蹤霸琴,失蹤者是張志新(化名)和其女友劉穎椒振,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體梧乘,經(jīng)...
    沈念sama閱讀 44,104評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡澎迎,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,451評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了选调。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片夹供。...
    茶點(diǎn)故事閱讀 38,569評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖仁堪,靈堂內(nèi)的尸體忽然破棺而出哮洽,到底是詐尸還是另有隱情,我是刑警寧澤弦聂,帶...
    沈念sama閱讀 34,254評論 4 328
  • 正文 年R本政府宣布袁铐,位于F島的核電站,受9級特大地震影響横浑,放射性物質(zhì)發(fā)生泄漏剔桨。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,834評論 3 312
  • 文/蒙蒙 一徙融、第九天 我趴在偏房一處隱蔽的房頂上張望洒缀。 院中可真熱鬧,春花似錦欺冀、人聲如沸树绩。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,725評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽饺饭。三九已至,卻和暖如春职车,著一層夾襖步出監(jiān)牢的瞬間瘫俊,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,950評論 1 264
  • 我被黑心中介騙來泰國打工悴灵, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留扛芽,地道東北人。 一個月前我還...
    沈念sama閱讀 46,260評論 2 360
  • 正文 我出身青樓积瞒,卻偏偏與公主長得像川尖,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子茫孔,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,446評論 2 348

推薦閱讀更多精彩內(nèi)容

  • gulpjs是一個前端構(gòu)建工具叮喳,與gruntjs相比被芳,gulpjs無需寫一大堆繁雜的配置參數(shù),API也非常簡單馍悟,學(xué)...
    依依玖玥閱讀 3,149評論 7 55
  • gulpjs是一個前端構(gòu)建工具畔濒,與gruntjs相比,gulpjs無需寫一大堆繁雜的配置參數(shù)赋朦,API也非常簡單,學(xué)...
    井皮皮閱讀 1,292評論 0 10
  • gulpjs是一個前端構(gòu)建工具李破,與gruntjs相比宠哄,gulpjs無需寫一大堆繁雜的配置參數(shù),API也非常簡單嗤攻,學(xué)...
    小裁縫sun閱讀 922評論 0 3
  • gulpjs是一個前端構(gòu)建工具毛嫉,與gruntjs相比,gulpjs無需寫一大堆繁雜的配置參數(shù)妇菱,API也非常簡單承粤,學(xué)...
    build1024閱讀 527評論 0 0
  • 1、gulp的安裝 首先確保你已經(jīng)正確安裝了nodejs環(huán)境闯团。然后以全局方式安裝gulp: npm install...
    F_imok閱讀 2,364評論 1 11