gulp基本操作

gulp

拭目以待 发布于

通配符路径匹配示例:

“src/a.js”:指定具体文件;
“*”:匹配所有文件    例:src/*.js(包含src下的所有js文件);
“**”:匹配0个或多个子文件夹    例:src/**/*.js(包含src的0个或多个子文件夹下的js文件);
“{}”:匹配多个属性    例:src/{a,b}.js(包含a.js和b.js文件)  src/*.{jpg,png,gif}(src下的所有jpg/png/gif文件);
“!”:排除文件    例:!src/a.js(不包含src下的a.js文件);


压缩时错误定位 依赖包gulp-util:

uglify().on('error', gulpUtil.log)


gulp.src路径规则:

gulp.src('src/**/*'): src目录下的所有文件
gulp.src(['src/**/*', '!src/zone/**/*', '!src/index.html']): 除过src/zone目录下全部文件及src/index.html文件外的所有src目录下的文件


src取非:

'!src/zone/**/*' || '!src/zone/**' || '!src/zone/**/'执行后会生成zone的空文件夹
'!src/zone/**/*.*' 执行后会生成zone及以下所有的空文件夹


查看当前执行的文件路径:

gulp.src('src/**/*')
.on('data', function(file){
        console.log(file.path)
    })
    .pipe()  //可以接着接pipe


创建删除任务:

gulp.task('clean', function() {
    del.sync(['dist/*']);
});


保持原目录结构移动文件:

return gulp.src('src/**/*.*')
       .pipe(gulp.dest('dist/'));


破坏原目录结构移动文件:


return gulp.src('src/**/*.*')
    .pipe(rename({dirname: ''}))
    .pipe(gulp.dest('dist/'));


配置gulp默认命令:

在命令行中输入gulp,会自动去寻找gulp.task('default')的任务进行执行。



相关链接:http://www.ydcss.com/archives/424

中文文档:http://www.gulpjs.com.cn/docs/

前端构建之gulp与常用插件:http://www.mamicode.com/info-detail-517085.html