gulp文件读取的先后顺序以及匹配的组合规则
程序员文章站
2022-04-18 13:15:16
...
首先gulp的文件读取不用说了,就是gulp.src
可以传单个字符串,也可以传数组
那么其实读取的文件先后顺序就是按照这个数组来的
比如:
return gulp.src([
path.join(config.src,'/!(*-tpls)*.js'),
path.join(config.src,'/*-tpls.js')
])
上面就是我实际用到的,在合并文件的时候,要先读取主文件,也就是我代码的定义一些module初始化的文件,然后再读取tpls模板文件。
这样就实现了,先读取-tpls.js以外名字的所有*.js文件,然后再读取*-tpls.js的文件。
同时这里面就又描述了匹配时候的规则
可以是不在某个文件夹下的文件
“src/test.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文件);
上面的例子就是排除的文件和匹配的文件进行组合。
可以传单个字符串,也可以传数组
那么其实读取的文件先后顺序就是按照这个数组来的
比如:
return gulp.src([
path.join(config.src,'/!(*-tpls)*.js'),
path.join(config.src,'/*-tpls.js')
])
上面就是我实际用到的,在合并文件的时候,要先读取主文件,也就是我代码的定义一些module初始化的文件,然后再读取tpls模板文件。
这样就实现了,先读取-tpls.js以外名字的所有*.js文件,然后再读取*-tpls.js的文件。
同时这里面就又描述了匹配时候的规则
可以是不在某个文件夹下的文件
“src/test.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文件);
上面的例子就是排除的文件和匹配的文件进行组合。