gulp

gulp安裝

1.在系統(tǒng)安裝(全局安裝):

? ? ? npm install gulp-cli -g

2.在文件中安裝:

? ? ? npm init -y ?安裝后出現(xiàn)json文件

? ? ? npm install -save-dev gulp gulp-util ?安裝后出現(xiàn)node_modules文件夾

3.創(chuàng)建gulpfile.js文件并寫入:

? ? var gulp = require('gulp');

? ? gulp.task('default', function() {

? ? //寫自己的代碼

? ? });

? ? 輸入gulp命令看是否安裝成功


gulp使用

html文件壓縮

命令:npm install --save-dev gulp-minify-html

樣例:var gulp = require('gulp'),

? ? ? ? ? ?minifyHtml = require("gulp-minify-html");

? ? ? ? ? ?gulp.task('myminifyhtml', function () {

? ? ? ? ? ? ? ? ? ? ?gulp.src('*.html') //要壓縮的html文件

? ? ? ? ? ? ? ? ? ? .pipe(minifyHtml()) //調(diào)用壓縮

? ? ? ? ? ? ? ? ? ? .pipe(gulp.dest('dist/html'))//壓縮到哪

? ? ? ? ? ? ? ? ? ? .pipe(connect.reload());//時時監(jiān)聽

? ? ? ? ? ?});

? ? ? ? ? ?gulp.task('default',['myminifyhtml']);

css文件壓縮

命令:npm install gulp-minify-css --save-dev

? ? ? ? ? ?npm install --save-devgulp-clean-oss

樣例:var gulp = require('gulp'),

? ? ? ? ? ?cssmin = require('gulp-minify-css');

? ? ? ? ? ?gulp.task('myminifycss', function () {

? ? ? ? ? ? ? ? ? ? gulp.src('css/*.css') //要壓縮的css文件

? ? ? ? ? ? ? ? ? ? .pipe(cssmin()) //調(diào)用壓縮

? ? ? ? ? ? ? ? ? ? .pipe(gulp.dest('dist/css')) //壓縮到哪

? ? ? ? ? ? ? ? ? ? .pipe(connect.reload()); //時時監(jiān)聽?

? ? ? ? ? ?});

? ? ? ? ? ?gulp.task('default',['myminifycss']);

js文件合并壓縮插件

命令:npm install --save-dev gulp-uglify gulp-concat

樣例:var gulp = require('gulp'),

? ? ? ? ? ?uglify=require('gulp-uglify'),

? ? ? ? ? ?concat=require('gulp-concat');

? ? ? ? ? ?gulp.task('myjs', function(){

? ? ? ? ? ? ? ? ? ? gulp.src('js/*.js') //要合并壓縮的js文件

? ? ? ? ? ? ? ? ? ? .pipe(uglify()) //調(diào)用壓縮

? ? ? ? ? ? ? ? ? ? .pipe(concat('all.js')) //合并所有js文件

? ? ? ? ? ? ? ? ? ? .pipe(gulp.dest('dist/myjs')) //壓縮到哪

? ? ? ? ? ? ? ? ? ? .pipe(connect.reload()); //時時監(jiān)聽

? ? ? ? ? ?});

? ? ? ? ? ?gulp.task('default',['myjs']);

自動監(jiān)聽自動刷新

命令:npm install --save-dev gulp-livereload

? ? ? ? ? ?npm install --save-dev gulp-connect

樣例:connect = require('gulp-connect');

? ? ? ? ? ?livereload = require('gulp-livereload');

? ? ? ? ? ?//自動監(jiān)聽

? ? ? ? ? ?gulp.task('watch', function () {

? ? ? ? ? ? ? ? ? ? ?gulp.watch('*.html', ['myminifyhtml']);

? ? ? ? ? ? ? ? ? ? ?gulp.watch('js/*.js', ['myjs']);

? ? ? ? ? ? ? ? ? ? ?gulp.watch('css/*.css', ['myminifycss']);

? ? ? ? ? ? });

? ? ? ? ? ? //設(shè)置刷新服務(wù)

? ? ? ? ? ? gulp.task('connect', function () {

? ? ? ? ? ? ? ? ? ? ?connect.server({

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?host: 'localhost', //地址芹橡,可不寫,不寫的話,默認(rèn)localhost

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?port: 8020, //端口號岔霸,可不寫沃粗,默認(rèn)8000

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?root: './', //當(dāng)前項目主目錄

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?livereload: true //自動刷新

? ? ? ? ? ? ? ? ? ? ?});

? ? ? ? ? ? ?});

? ? ? ? ? ? ?gulp.task('default',['watch','connect']);

具體代碼參考以下

? ? ? ? ? ? ?//定義依賴項和插件

? ? ? ? ? ? ?var gulp=require('gulp'),

? ? ? ? ? ? ?gutil=require('gulp-util'),

? ? ? ? ? ? ?uglify=require('gulp-uglify'),

? ? ? ? ? ? ?cssmin = require('gulp-minify-css'),

? ? ? ? ? ? ?minifyHtml = require("gulp-minify-html"),

? ? ? ? ? ? ?rename = require('gulp-rename'),

? ? ? ? ? ? ?connect = require('gulp-connect');

? ? ? ? ? ? ?livereload = require('gulp-livereload');

? ? ? ? ? ? ?//定義名為"js"的任務(wù)

? ? ? ? ? ? ?gulp.task('uglifyjs', function(){

? ? ? ? ? ? ? ? ? ? ? gulp.src('js/*.js')

? ? ? ? ? ? ? ? ? ? ?.pipe(uglify())

? ? ? ? ? ? ? ? ? ? ?.pipe(gulp.dest('dist/js'))

? ? ? ? ? ? ? ? ? ? ?.pipe(connect.reload());

? ? ? ? ? ? ?});

? ? ? ? ? ? ?gulp.task('testCssmin', function () {

? ? ? ? ? ? ? ? ? ? ? gulp.src('css/index1.css')

? ? ? ? ? ? ? ? ? ? ? .pipe(cssmin())

? ? ? ? ? ? ? ? ? ? ? .pipe(rename('aaaa.css'))

? ? ? ? ? ? ? ? ? ? ? .pipe(gulp.dest('dist/css'))

? ? ? ? ? ? ? ? ? ? ? .pipe(connect.reload());

? ? ? ? ? ? ?});

? ? ? ? ? ? ?gulp.task('minify-html', function () {

? ? ? ? ? ? ? ? ? ? ? ?gulp.src('*.html') //要壓縮的html文件

? ? ? ? ? ? ? ? ? ? ? ?.pipe(minifyHtml()) //壓縮

? ? ? ? ? ? ? ? ? ? ? ?.pipe(gulp.dest('dist/html'))

? ? ? ? ? ? ? ? ? ? ? ?.pipe(connect.reload());

? ? ? ? ? ? ?});

? ? ? ? ? ? ?//自動監(jiān)聽

? ? ? ? ? ? ?gulp.task('watch', function () {

? ? ? ? ? ? ? ? ? ? ?gulp.watch('*.html', ['minify-html']);

? ? ? ? ? ? ? ? ? ? ?gulp.watch('js/*.js', ['uglifyjs']);

? ? ? ? ? ? ? ? ? ? ?gulp.watch('css/*.css', ['testCssmin']);

? ? ? ? ? ? ?});

? ? ? ? ? ? ?//設(shè)置刷新服務(wù)

? ? ? ? ? ? ?gulp.task('connect', function () {

? ? ? ? ? ? ? ? ? ? ?connect.server({

? ? ? ? ? ? ? ? ? ? ? ? ? ? ?host: 'localhost', //地址挂绰,可不寫抛腕,不寫的話堤尾,默認(rèn)localhost

? ? ? ? ? ? ? ? ? ? ? ? ? ? ?port: 8020, //端口號肝劲,可不寫,默認(rèn)8000

? ? ? ? ? ? ? ? ? ? ? ? ? ? ?root: './', //當(dāng)前項目主目錄

? ? ? ? ? ? ? ? ? ? ? ? ? ? ?livereload: true //自動刷新

? ? ? ? ? ? ? ? ? ? ?});

? ? ? ? ? ? ?});

? ? ? ? ? ? ?//定義默認(rèn)任務(wù)

? ? ? ? ? ? ?gulp.task('default', ['uglifyjs','testCssmin','minify-html','watch','connect']);

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末郭宝,一起剝皮案震驚了整個濱河市辞槐,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌粘室,老刑警劉巖催蝗,帶你破解...
    沈念sama閱讀 223,126評論 6 520
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異育特,居然都是意外死亡丙号,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,421評論 3 400
  • 文/潘曉璐 我一進店門缰冤,熙熙樓的掌柜王于貴愁眉苦臉地迎上來犬缨,“玉大人,你說我怎么就攤上這事棉浸』逞Γ” “怎么了?”我有些...
    開封第一講書人閱讀 169,941評論 0 366
  • 文/不壞的土叔 我叫張陵迷郑,是天一觀的道長枝恋。 經(jīng)常有香客問我,道長嗡害,這世上最難降的妖魔是什么焚碌? 我笑而不...
    開封第一講書人閱讀 60,294評論 1 300
  • 正文 為了忘掉前任,我火速辦了婚禮霸妹,結(jié)果婚禮上十电,老公的妹妹穿的比我還像新娘。我一直安慰自己叹螟,他們只是感情好鹃骂,可當(dāng)我...
    茶點故事閱讀 69,295評論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著罢绽,像睡著了一般畏线。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上良价,一...
    開封第一講書人閱讀 52,874評論 1 314
  • 那天寝殴,我揣著相機與錄音蒿叠,去河邊找鬼。 笑死杯矩,一個胖子當(dāng)著我的面吹牛栈虚,可吹牛的內(nèi)容都是我干的袖外。 我是一名探鬼主播史隆,決...
    沈念sama閱讀 41,285評論 3 424
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼曼验!你這毒婦竟也來了泌射?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 40,249評論 0 277
  • 序言:老撾萬榮一對情侶失蹤鬓照,失蹤者是張志新(化名)和其女友劉穎熔酷,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體豺裆,經(jīng)...
    沈念sama閱讀 46,760評論 1 321
  • 正文 獨居荒郊野嶺守林人離奇死亡拒秘,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,840評論 3 343
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了臭猜。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片躺酒。...
    茶點故事閱讀 40,973評論 1 354
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖蔑歌,靈堂內(nèi)的尸體忽然破棺而出羹应,到底是詐尸還是另有隱情,我是刑警寧澤次屠,帶...
    沈念sama閱讀 36,631評論 5 351
  • 正文 年R本政府宣布园匹,位于F島的核電站,受9級特大地震影響劫灶,放射性物質(zhì)發(fā)生泄漏裸违。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 42,315評論 3 336
  • 文/蒙蒙 一本昏、第九天 我趴在偏房一處隱蔽的房頂上張望累颂。 院中可真熱鬧,春花似錦凛俱、人聲如沸紊馏。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,797評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽朱监。三九已至,卻和暖如春原叮,著一層夾襖步出監(jiān)牢的瞬間赫编,已是汗流浹背巡蘸。 一陣腳步聲響...
    開封第一講書人閱讀 33,926評論 1 275
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留擂送,地道東北人悦荒。 一個月前我還...
    沈念sama閱讀 49,431評論 3 379
  • 正文 我出身青樓,卻偏偏與公主長得像嘹吨,于是被迫代替她去往敵國和親搬味。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,982評論 2 361

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

  • gulpjs是一個前端構(gòu)建工具蟀拷,與gruntjs相比碰纬,gulpjs無需寫一大堆繁雜的配置參數(shù),API也非常簡單问芬,學(xué)...
    依依玖玥閱讀 3,158評論 7 55
  • 1悦析、gulp的安裝 首先確保你已經(jīng)正確安裝了nodejs環(huán)境。然后以全局方式安裝gulp: npm install...
    F_imok閱讀 2,387評論 1 11
  • 在現(xiàn)在的前端開發(fā)中此衅,前后端分離强戴、模塊化開發(fā)、版本控制挡鞍、文件合并與壓縮骑歹、mock數(shù)據(jù)等等一些原本后端的思想開始...
    Charlot閱讀 5,449評論 1 32
  • 對網(wǎng)站資源進行優(yōu)化,并使用不同瀏覽器測試并不是網(wǎng)站設(shè)計過程中最有意思的部分匕累,但是這個過程中的很多重復(fù)的任務(wù)能夠使用...
    懵逼js閱讀 1,073評論 0 8
  • 1.在系統(tǒng)安裝:npm install gulp-cli -g 2.在文件中安裝: npm init -y安裝后出...
    醋寶寶閱讀 389評論 0 0