gulp

簡單介紹

gulp是基于node開發(fā)的所以可以使用npm這個nodejs的包管理工具安裝gulp,使用npm首先得配置node環(huán)境

Install

npm? install? gulp-cli? -g? 全局安裝gulp

gulp? --help? ? ? ? ? 返回幫助信息

package.json

npm? init? 初始化npm

npm? install? gulp? gulp-util? --save-dev //從本地把整個gulp文件夾拉過來

task

創(chuàng)建gulpfile.js文件

var gulp=require('gulp');

gulp.task('hello', function () {

console.log('hello');

});

gulp.task('default',['hello']);

basic

gulp.src()找出想要處理的文件

.pipe()通過pipe()去處理找出來的文件,可以理解為管道

.pipe(gulp.dest())處理好的文件放到指定地方

復(fù)制html文件

var gulp=require('gulp');

gulp.task('hello', function () {

return gulp.src('./index.html').pipe(gulp.dest('./xiangmu/dist'));

});

復(fù)制img文件

var gulp=require('gulp');

gulp.task('hello', function () {

return gulp.src('./img/*.{jpg,png}').pipe(gulp.dest('./xiangmu/dist'));

});

引用其他多個目錄中的文件

var gulp=require('gulp');

gulp.task('hello', function () {

return gulp.src(['a/.html','b/.html']).pipe(gulp.dest('./xiangmu/dist'));

});

排除其它的文件

var gulp=require('gulp');

gulp.task('hello', function () {

return gulp.src(['./a/*','!./a/a.less']).pipe(gulp.dest('./xiangmu/dist'));

});

同時執(zhí)行幾個任務(wù)

gulp.task('build',['myhtml','mycss'], function () {

console.log('aaaaaaaaa');

});

監(jiān)聽任務(wù)

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

gulp.watch('a/*',['hello']);

});

使用插件來擴展gulp的功能

Sass插件

npm install gulp-sass --save-dev

gulp.task('mysass', function () {

return gulp.src('*.scss')

.pipe(sass())

.pipe(gulp.dest('./xiangmu/cc'))

});

less插件

npm install gulp-less --save-dev

gulp.task('myless', function () {

return gulp.src('./a/*.less').pipe(less()).pipe(gulp.dest('./xiangmu/less'));

});

構(gòu)建服務(wù)器

npm install gulp-connect --save-dev

gulp.task('server', function () {

connect.server({

root:'dist'

});

});

瀏覽器實時刷新

npm install gulp gulp-livereload --save-dev

在server服務(wù)中添加livereload:true(啟動實時刷新的功能)

在要實現(xiàn)刷新的文件中添加.pipe(connect.reload())

合并文件

npm install gulp-concat --save-dev

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

return gulp.src(['js/a.js','js/b.js']).pipe(concat(‘a(chǎn)b.js’)).pipe('./xiangmu/js');

});

Js壓縮文件

npm install gulp-uglify --save-dev

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

gulp.src('js/*.js').pipe(uglify()).pipe(gulp.dest('dist/js'))

});

Css文件壓縮

npm install gulp-minify-css --save-dev

npm install gulp-clean-css --save-dev

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

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

gulp.src('css/*.css')

.pipe(cssmin())

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

});

html文件壓縮

npm install? gulp-minify-html --save-dev

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

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

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

.pipe(minifyHtml()) //壓縮

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

});

重命名

npm install? gulp-rename --save-dev

.pipe()

圖片優(yōu)化

npm install? gulp-imagemin --save-dev

.pipe()

作者:河灣歡兒

鏈接:http://www.reibang.com/p/bbb51a414be1

來源:簡書

著作權(quán)歸作者所有绝编。商業(yè)轉(zhuǎn)載請聯(lián)系作者獲得授權(quán)囤热,非商業(yè)轉(zhuǎn)載請注明出處要拂。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末堰氓,一起剝皮案震驚了整個濱河市袄秩,隨后出現(xiàn)的幾起案子噪生,更是在濱河造成了極大的恐慌裆赵,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,695評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件跺嗽,死亡現(xiàn)場離奇詭異战授,居然都是意外死亡,警方通過查閱死者的電腦和手機桨嫁,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,569評論 3 399
  • 文/潘曉璐 我一進店門植兰,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人璃吧,你說我怎么就攤上這事楣导。” “怎么了畜挨?”我有些...
    開封第一講書人閱讀 168,130評論 0 360
  • 文/不壞的土叔 我叫張陵筒繁,是天一觀的道長噩凹。 經(jīng)常有香客問我,道長毡咏,這世上最難降的妖魔是什么驮宴? 我笑而不...
    開封第一講書人閱讀 59,648評論 1 297
  • 正文 為了忘掉前任,我火速辦了婚禮呕缭,結(jié)果婚禮上堵泽,老公的妹妹穿的比我還像新娘。我一直安慰自己恢总,他們只是感情好落恼,可當我...
    茶點故事閱讀 68,655評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著离熏,像睡著了一般。 火紅的嫁衣襯著肌膚如雪戴涝。 梳的紋絲不亂的頭發(fā)上滋戳,一...
    開封第一講書人閱讀 52,268評論 1 309
  • 那天,我揣著相機與錄音啥刻,去河邊找鬼奸鸯。 笑死,一個胖子當著我的面吹牛可帽,可吹牛的內(nèi)容都是我干的娄涩。 我是一名探鬼主播,決...
    沈念sama閱讀 40,835評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼映跟,長吁一口氣:“原來是場噩夢啊……” “哼蓄拣!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起努隙,我...
    開封第一講書人閱讀 39,740評論 0 276
  • 序言:老撾萬榮一對情侶失蹤球恤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后荸镊,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體咽斧,經(jīng)...
    沈念sama閱讀 46,286評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,375評論 3 340
  • 正文 我和宋清朗相戀三年躬存,在試婚紗的時候發(fā)現(xiàn)自己被綠了张惹。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,505評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡岭洲,死狀恐怖宛逗,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情盾剩,我是刑警寧澤拧额,帶...
    沈念sama閱讀 36,185評論 5 350
  • 正文 年R本政府宣布碑诉,位于F島的核電站,受9級特大地震影響侥锦,放射性物質(zhì)發(fā)生泄漏进栽。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,873評論 3 333
  • 文/蒙蒙 一恭垦、第九天 我趴在偏房一處隱蔽的房頂上張望快毛。 院中可真熱鬧,春花似錦番挺、人聲如沸唠帝。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,357評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽襟衰。三九已至,卻和暖如春粪摘,著一層夾襖步出監(jiān)牢的瞬間瀑晒,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,466評論 1 272
  • 我被黑心中介騙來泰國打工徘意, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留苔悦,地道東北人。 一個月前我還...
    沈念sama閱讀 48,921評論 3 376
  • 正文 我出身青樓椎咧,卻偏偏與公主長得像玖详,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子勤讽,可洞房花燭夜當晚...
    茶點故事閱讀 45,515評論 2 359

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

  • gulpjs是一個前端構(gòu)建工具蟋座,與gruntjs相比,gulpjs無需寫一大堆繁雜的配置參數(shù)脚牍,API也非常簡單蜈七,學(xué)...
    依依玖玥閱讀 3,157評論 7 55
  • 1、gulp的安裝 首先確保你已經(jīng)正確安裝了nodejs環(huán)境莫矗。然后以全局方式安裝gulp: npm install...
    F_imok閱讀 2,384評論 1 11
  • 安裝Gulp首先需要安裝Node.js飒硅,并在控制臺輸入$ npm install gulp -gMac端需要寫成$...
    LaBaby_閱讀 929評論 0 1
  • Gulp的準備工作 1、準備工作 2作谚、Gulp基礎(chǔ) 3三娩、Gulp插件 安裝gulp 在node.js環(huán)境下輸入指令...
    H5日常記閱讀 623評論 0 1
  • gulp.js 是基于node.js構(gòu)建的。利用nodejs流的威力 1. 安裝nodejs http://www...
    芹菜斯_嘉麗閱讀 511評論 0 0