码迷,mamicode.com
首页 > 其他好文 > 详细

一个完整的gulp例子(含注释)亲测可用

时间:2017-09-27 00:38:24      阅读:332      评论:0      收藏:0      [点我收藏+]

标签:rip   mini   没有   压缩   3.0   const   匹配   fun   des   


// 1.引入gulp 获取 gulp
const gulp = require(‘gulp‘)

// 2.引入gulp需要用的各个类型插件
const less = require(‘gulp-less‘)
const csso = require(‘gulp-csso‘) //这个插件作用是压缩css的
const uglify = require(‘gulp-uglify‘)
const htmlmin = require(‘gulp-htmlmin‘)
const imagemin = require(‘gulp-imagemin‘)
const sass =require(‘gulp-sass‘)

// 3.定义任务

//3.0 没有less sass 处理css
gulp.task(‘style‘, function(){
gulp.src([‘./css/*.*‘]) // 匹配到指定的css文件*代表所有
.pipe(csso()) //把转化的css压缩 不写不压缩
.pipe(gulp.dest(‘./dist/css‘)) //把这些操作过的文件放到哪个文件夹

})


// 3.1 处理less
//gulp.task(‘style‘, function(){
//gulp.src([‘./less/*.*‘]) // 匹配到指定的less文件*代表所有
// .pipe(less()) // 将less转换为css
// .pipe(csso()) //把转化的css压缩 不写不压缩
//.pipe(gulp.dest(‘./dist/css‘)) //把这些操作过的文件放到哪个文件夹

// })

// 3.1处理sass
//gulp.task(‘sass‘, function(){
// gulp.src([‘./sass/*.*‘]) // 匹配到指定的less文件*代表所有
// .pipe(sass()) // 将sasss转换为css
// .pipe(csso()) //把转化的css压缩 不写不压缩
// .pipe(gulp.dest(‘./dist/css‘)) //把这些操作过的文件放到哪个文件夹

// })


// 3.2 处理js
gulp.task(‘script‘, function(){
gulp.src([‘./js/*.js‘]) // 匹配到指定的less文件 *代表所有
.pipe(uglify()) //压缩 获取到的js 不写不压缩
.pipe(gulp.dest(‘./dist/js‘)) //把这些操作过的文件放到哪个文件夹
})

// 3.3 处理html 因为html文件内可能有js可能有css所以需要条件
gulp.task(‘html‘, function(){
//html可能不都是在一个目录用数组就可以写多个路径
gulp.src([‘./*.html‘])
.pipe(htmlmin({ //压缩 获取到的html
collapseWhitespace:true, // 如下
minifyCSS: true, // 如下
minifyJS: true // 如下
}))
.pipe(gulp.dest(‘./dist‘)) //输出到哪个文件夹
})


//3.4 处理图片
gulp.task(‘images‘, function () {
// 1. 找到图片
gulp.src([‘./images/*.*‘])
// 2. 压缩图片
.pipe(imagemin({
progressive: true
}))
.pipe(gulp.dest(‘./dist/images‘))
});

// 如果这个任务名不是`default`,则执行该任务时,需要在cmd中输入:
//`gulp +你定义的名字` 或者你要是嫌麻烦干脆把名字像下边是的就写default

gulp.task(‘default‘, function(){
// watch是用来监视文件的变化,然后当文件变化时,执行指定的任务
// 第一个参数是要监视的文件
// **/*.* 表示 任意目录下的任意文件 **表示任意文件夹
// 第二个参数是要执行的任务
gulp.watch(‘./**/*.*‘,[‘html‘,‘script‘,‘style‘,‘images‘])
})

// html压缩常用方法:

//collapseWhitespace: true, //压缩html
// collapseBooleanAttributes: true, //省略布尔属性的值
// removeComments: true, //清除html注释
// removeEmptyAttributes: true, //删除所有空格作为属性值
// removeScriptTypeAttributes: true, //删除type=text/javascript
// removeStyleLinkTypeAttributes: true, //删除type=text/css
// minifyJS:true, //压缩页面js
// minifyCSS:true //压缩页面css

一个完整的gulp例子(含注释)亲测可用

标签:rip   mini   没有   压缩   3.0   const   匹配   fun   des   

原文地址:http://www.cnblogs.com/2016-zy-3258/p/7599500.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!