博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Gulp 简单的开发环境搭建
阅读量:5846 次
发布时间:2019-06-18

本文共 3519 字,大约阅读时间需要 11 分钟。

//获取gulp//require()是 node (CommonJS)中获取模块的语法var gulp=require('gulp');//获取gulp-concat模块(用于合并文件):npm install --save-dev gulp-concatvar concat=require('gulp-concat');//获取gulp-jshint(语法检查):npm install jshintvar jshint=require('gulp-jshint');//获取gulp-uglify组件(用于压缩JS):npm install gulp-uglifyvar uglify=require('gulp-uglify');//获取minify-css模块(用于压缩CSS):npm install gulp-minify-cssvar minifyCSS=require('gulp-minify-css');//获取gulp-imagemin模块:npm instal gulp-imageminvar imagemin=require('gulp-imagemin');//获取gulp-less 模块:npm install gulp-lessvar less=require('gulp-less');//获取gulp-ruby-sass模块:npm install gulp-ruby-sass@1.0.1/*var sass=require('gulp-ruby-sass');*///获取gulp-sass模块:不依赖ruby环境,依赖包:node-sassvar sass=require('gulp-sass');//获取gulp-minify-html模块:npm i gulp-minify-htmlvar minifyHtml=require('gulp-minify-html');//获取gulp-autoprefixer模块:npm i gulp-autoprefixervar autoprefixer = require('gulp-autoprefixer');//获取gulp-watch-path模块:npm install gulp-watch-path//var watchPath=require('gulp-watch-path');//获取gulp-rename(文件重命名):npm install gulp-renamevar rename=require('gulp-rename');//创建任务// 语法检查gulp.task('jshint', function () {    return gulp.src('js/*.js')        .pipe(jshint())        .pipe(jshint.reporter('default'));});//压缩js文件//在命令行中使用gulp script启动此任务gulp.task('script',function(){	//1.找到文件	gulp.src('js/*.js')	//2.压缩文件	.pipe(uglify())    //3.压缩后另存文件    .pipe(gulp.dest('dist/js'))});//创建压缩css任务gulp.task('css',function(){	//1.找到文件	gulp.src('css/*.css')	//2.压缩文件	.pipe(minifyCSS())	//3.另存为压缩文件	.pipe(gulp.dest('dist/css'))    //4.压缩后的文件重命名为:xx.min.css	.pipe(rename({suffix:'.min'}))	.pipe(autoprefixer())	.pipe(minifyCSS())	.pipe(gulp.dest('dist/css'))});//创建压缩图片任务//在命令行输入 gulp images 启动此任务gulp.task('images',function(){	//1.找到图片	gulp.src('images/*.*')	//2.压缩图片	.pipe(imagemin({		progressive:true	}))	//3.另存压缩后图片	.pipe(gulp.dest('dist/images'))});//压缩HTML文件//在命令行输入 gulp minifyHTML 启动此任务gulp.task('html', function () {    gulp.src('html/*.html') // 要压缩的html文件    .pipe(minifyHtml()) //压缩    .pipe(gulp.dest('dist/html'));});//编译less//在命令行输入 gulp less 启动此任务gulp.task('less',function(){	//1.找到 less 文件	gulp.src('less/**.less')	//2.编译为css	.pipe(less())	//3.另存文件	.pipe(gulp.dest('dist/css'))	//4.重命名,并压缩	.pipe(rename({suffix:'.min'}))	.pipe(minifyCSS())	.pipe(gulp.dest('dist/min/css'))});//编译sass//在命令行输入 gulp sass启动此任务gulp.task('sass', function() {     gulp.src('sass/*.scss')     .pipe(sass())     .pipe(gulp.dest('dist/css'))     .pipe(rename({suffix:'.min'}))	 .pipe(minifyCSS())	 .pipe(gulp.dest('dist/min/css'))});//文件合并gulp.task('concat', function () {    gulp.src('js/*.js')  //要合并的文件    .pipe(concat('all.js'))  // 合并匹配到的js文件并命名为 "all.js"    .pipe(gulp.dest('dist/js'))    .pipe(rename({suffix:'.min'}))    .pipe(uglify())    .pipe(gulp.dest('dist/js'))});//autoprefixer,自动补全css3前缀gulp.task('autoprefixer',function(){	return gulp.src('css/*.css')	.pipe(autoprefixer({		browsers:['last 2 version'],		cascade:false	}))	.pipe(gulp.dest('dist/css'))})//自动监听:当文件修改时候,自动执行script任务//在命令行使用gulp watch 启动以下任务gulp.task('watch',function(){	gulp.watch('js/*.js',['jshint','script','concat']);	gulp.watch('sass/*.scss',['sass','css','autoprefixer']);	gulp.watch('css/*.css',['css','autoprefixer']);	gulp.watch('html/*.html',['html']);});//使用gulp.task('default') 定义默认任务,即:输入 gulp script 指令时默认启动该任务//在命令行使用 gulp 启动 script 任务 和 auto 任务//停止自动任务:Ctrl + C//多任务执行 gulp +回车gulp.task('default',['jshint','autoprefixer','script','css','html','images','sass','less','watch']);

转载于:https://www.cnblogs.com/kevinCoder/p/4802085.html

你可能感兴趣的文章
我的友情链接
查看>>
留在时光中的永恒记忆——父亲(下)
查看>>
图像处理之霍夫变换(直线检测算法)
查看>>
Preconditions的简单学习
查看>>
WES 7 下如何处理蓝牙模块驱动安装失败的问题
查看>>
Linux0.11内核--系统中断处理程序int 0x80实现原理
查看>>
我的友情链接
查看>>
IOS Core Animation Advanced Techniques的学习笔记(三)
查看>>
Win8系统下使用应用商店窗口提示“无法使用内置管理员账户打开应用商店
查看>>
生产环境中mysql主从同步/完整/增量备份
查看>>
我的友情链接
查看>>
C#链接SQLServer实现插入和查询数据源代码
查看>>
告诉你C盘中的每一个文件夹都是干什么的!
查看>>
本博客中关于功能点分析FPA的文章索引
查看>>
linux下怎样查看硬盘型号和硬盘序列号
查看>>
神州数码 路由器CHAP认证
查看>>
Cortana小娜:智能提醒“该出发了”
查看>>
SharePoint2013 中集成AD RMS 与Office Web App 2013集成
查看>>
Windows与Linux下重置MYSQL的Root密码方法
查看>>
III(二十)SVN
查看>>