[Gulp]

1.注册任务的时候遍历某个目录下的所有js文件

1 //注册 合并压缩js  的任务
2 gulp.task('js', functon (){
3     return gulp.src('src/js/*.js')//找到目标源文件, 将数据读取到gulp的内存中
4 });

2. 深度遍历目录下的所有js文件

1 1 //注册 合并压缩js  的任务
2 2 gulp.task('js', functon (){
3 3     return gulp.src('src/js/**/*.js') // 这一行会把src/js下面的所有目录里面的所有js文件匹配到(比如src/js/temp.js,  src/js/func1/func2/func3/test.js等)
4 4 });

3.练习--合并压缩重命名JS文件

 1 const gulp = require('gulp');
 2 const concat = require('gulp-concat');
 3 const uglify = require('gulp-uglify');
 4 const rename = require('gulp-rename');
 5  
 6 gulp.task('js',function(){
 7     return gulp.src('src/js/*.js')//找到目标文件 将数据读取到gulp的内存中
 8     .pipe(concat('build.js')//合并文件
 9     .pipe(gulp.dest('./dist/js/'))//临时输出文件到本地
10     .pipe(uglify()) //压缩文件
11     .pipe(rename({suffix:'.min'}))//重命名
12     //.pipe(rename('build.min.js'))//或者是这样直接写好文件名来重命名
13     .pipe(gulp.dest('./dist/js/')) //输出最终文件
14 })

4. gulp任务是异步执行的, 但是有的任务需要依赖一些前置任务, 比如合并压缩css文件之前 需要将less之类的文件先转化为css,输出到指定的css目录, 这样所有的less转换为css后才能执行css的合并压缩,这个时候需要解决任务之间的依赖关系

1 gulp.task('css',['less'],function(){//第二个参数是依赖的前置任务名称  只有这些任务执行完了 才会开始执行css任务
2     return gulp.src('src/css/*.css')
3         .pipe(concat('build.css'))
4         .pipe(rename({suffix:'min'})
5         .pipe(cssClean({compatibility:'ie8'}))
6         .pipe(gulp.dest('dist/css/'))
7 });
原文地址:https://www.cnblogs.com/buerjiongjiong/p/14884517.html