导读
在gulp
实现前端自动化的时候,最多的时候就是对流(stream
)的分析处理,在某些情景比较复杂的时候,在流处理的过程中很容易出现问题,就比如一些流需要单独过滤处理,但是之后最终却要一起再处理;或者一些多文件夹层级的文件处理,需要提取某一层级的文件,或者把所有层级的文件全部提取出来,放在一个层级里面;甚至有些管道需要使用条件处理,等等;
所以我们这里介绍,gulp-filter
、gulp-flatten
、gulp-if
这三个流处理插件:
gulp-filter
根据规则(minimatch),筛选出需要的文件流单独最后处理,筛选时坑有点多,建议配合使用gulp-print
以及gulp-util
工具开发,以及需要注意工作流的先后同步问题
-
gulp-filter文档:https://www.npmjs.com/package/gulp-filter
let gulp = require("gulp");
let gulpLoadPlugins = require('gulp-load-plugins');
let $ = gulpLoadPlugins({
lazyload: true, rename:{
"gulp-ruby-sass" : "sass", "gulp-markdown-pdf": "mdpdf", "gulp-rev-collector":"revCollector", "gulp-asset-rev":"assetRev"}});
let del = require("del"