gulp 的使用:
发送项目给他人时,只需发送 package.json 包,然后另一方运行 npm install 即可获得项目所需的包文件 node_modules ;
gulpfile.js文件:
1 var gulp = require("gulp"); 2 var cssnano = require("gulp-cssnano"); 3 var rename = require("gulp-rename"); 4 var uglify = require("gulp-uglify"); 5 var concat = require("gulp-concat"); 6 var imagesmin = require("gulp-imagemin"); 7 var cache = require("gulp-cache"); 8 var bs = require("browser-sync").create(); 9 10 //console.log:在控制台加载信息; 11 gulp.task("greet",function () { 12 console.log("hello world"); 13 }); 14 15 //src:读取操作的文件 16 //cssnano:css的压缩 17 //rename:修改文件的后缀名; 18 //dest:指定生成的文件目录 19 gulp.task("css",function () { 20 gulp.src("./css/*.css") 21 .pipe(cssnano()) 22 //index.css ->index.min.css 23 .pipe(rename({"suffix":".min"})) 24 .pipe(gulp.dest("./dist/css/")) 25 .pipe(bs.stream()) 26 }); 27 28 //concat:文件合并 29 //uglify:对js文件进行压缩和丑化(修改变量名) 30 // toplevel:在顶级范围内压缩和/或修改变量。为True时,只显示简单的代码内容; 31 //drop_console:为True时,删除控制台打印的语句; 32 gulp.task("js",function () { 33 gulp.src("./js/*.js") 34 .pipe(concat("index.js")) 35 .pipe(uglify({ 36 ‘toplevel‘:true, 37 ‘compress‘:{ 38 ‘drop_console‘:true 39 } 40 })) 41 .pipe(rename({"suffix":".min"})) 42 .pipe(gulp.dest("./dist/js/")) 43 .pipe(ps.stream()) 44 }); 45 46 //cache:缓存; 47 //imagesmin:压缩图片; 48 gulp.task("images",function () { 49 gulp.src("./images/*.*") 50 .pipe(cache(imagesmin())) 51 .pipe(gulp.dest("./dist/images/")) 52 .pipe(ps.stream()) 53 }); 54 55 //watch:实时监听文件变化并更新 56 //[‘css‘]:监听后执行名字为‘css’的任务。 57 gulp.task("watch",function () { 58 gulp.watch("./css/*.css",[‘css‘]) 59 }); 60 61 //browser-sync:实时刷新浏览器 62 //init:启动browser-sync服务; 63 gulp.task("bs",function () { 64 bs.init({ 65 ‘server‘:{ 66 ‘baseDir‘:‘./‘ 67 } 68 }) 69 }); 70 71 //先运行表bs,watch,实时监听文件变化与刷新浏览器; 72 gulp.task("server",[‘bs‘,‘watch‘]);
cmd操作:
参考资料:
原文:https://www.cnblogs.com/liqiongming/p/10784834.html