//引入 gulp 模塊化 var gulp = require("gulp");//引入插件var sass = require("gulp-sass");//將sass文件轉(zhuǎn)成css var concat = require("gulp-concat");//合并文件 提供參數(shù)var cssmin = require("gulp-cssmin");//壓縮cssvar imgmin = require("gulp-imagemin");//壓縮圖片var rename = require("gulp-rename");//重命名 提供參數(shù)var uglify = require("gulp-uglify");//壓縮js文件//壓縮圖片 壓縮images目錄下的所有圖片 并生成到img目錄下gulp.task( "imgmin" , function(){ return gulp.src("images/*") .pipe( imgmin() ) .pipe( gulp.dest( "img" ) );} ) //將src目錄下的所有js文件合并 合并后壓縮 并重命名gulp.task( "concat" , function(){ return gulp.src( "src/*.js" ) .pipe( concat( "all.js" ) ) .pipe( uglify() ) .pipe( rename("all.min.js") ) .pipe( gulp.dest("src") );} )//布置任務(wù) 將src目錄下的sport5.js文件 壓縮 并重命名 sport.min.js 最后輸送到 dest的js目錄下gulp.task( "uglify" , function(){ return gulp.src("src/sport5.js") .pipe( uglify() ) .pipe( rename("sport.min.js") ) .pipe( gulp.dest( "dest/js" ) )} )//布置任務(wù) 將css目錄下的index.scss文件轉(zhuǎn)成 css文件 生成到css目錄下gulp.task( "sass" ,function(){ return gulp.src( "css/index.scss" ) .pipe( sass() ) .pipe( gulp.dest("css") );} ) //壓縮css目錄下的css文件 并重命名 index.min.cssgulp.task( "rename" , function(){ return gulp.src("css/index.css") .pipe( cssmin() ) .pipe( rename("index.min.css") ) .pipe( gulp.dest("css") )}) //布置任務(wù) 使用task方法//default 任務(wù)gulp.task("default",function(){ console.log("default任務(wù)執(zhí)行");})//布置一個say任務(wù) gulp.task( "say" , function(){ console.log("say任務(wù)執(zhí)行");} )//布置一個dance任務(wù)gulp.task( "dance" ,["say","default"], function(){ console.log( "dance任務(wù)執(zhí)行" );} )//布置任務(wù)// 將src目錄中的index.html文件 復(fù)制到 dest目錄下gulp.task( "copyHtml" , function(){ return gulp.src("src/index.html") .pipe( gulp.dest("dest/html") );} )//將src下面的所有js文件和css文件 復(fù)制到 dest目錄中的lib目錄下gulp.task( "copyJs" , function(){ return gulp.src( [ "src/*.js" , "src/*.css" ] ) .pipe( gulp.dest( "dest/lib" ) );} )//將src下 的所有文件(除了js文件)復(fù)制到dest目錄下面的all目錄中 // src/* 表示src下面的所有文件// src/**/* 表示src下面的所有目錄和目錄下的所有文件// !src/*.js 除了 src下面的所有js文件gulp.task( "copyCss" , function(){ return gulp.src( ["src/*","!src/*.js"] ) .pipe( gulp.dest( "dest/all" ) );} )//watch 方法 監(jiān)聽方法//參數(shù)一 :監(jiān)聽文件的路徑//參數(shù)二 : 某個任務(wù) 是一個數(shù)組//布置任務(wù),功能 監(jiān)聽src下面的index.html內(nèi)容變化,//如果內(nèi)容發(fā)生變化,就將index.html復(fù)制到dest的html目錄中g(shù)ulp.task( "watchHtml",function(){ return gulp.watch( "src/index.html" , ["copyHtml"] );} )
?
來源:http://www.icode9.com/content-4-118951.html