我正在使用Gulp作为构建过程,我最近遇到了一些特定于页面的文件注入问题(通过gulp-inject fyi)。
一些上下文:我抓取所有HTML文件,然后一次一个地查看它们,这样我就可以使用他们的文件名将特定文件包含到glob集合中,例如index.html
我有:< / p>
[
'export/assets/js/libs/jquery*.js', // jQuery first
'export/assets/js/libs/*.js', // Followed by all the libs
'export/assets/js/*.js', // Followed by any other js file
'!export/assets/js/view-*.js', // Excluding all view-* files [see note]
'!export/assets/**/_*.js', // Excluding underscore prefixed files
'!export/assets/js/ie*.js', // Excluding all IE libs
'export/assets/js/view-index*.js' // Including page specific file
]
[note]可能有更多特定于页面的文件,例如。 view-profile.js
或view-contact.js
,但在此次迭代中,只能包含view-index.js
。
然后上面的代码gulp.src()
'进行处理,只有view-index.js
才会进入流中。
修改
我接受了下面的答案,因为它指出我所拥有的东西不足以实现我的目标。我通过export/assets/js/**/*.js
找到了一个解决方法,并通过gulp-ignore过滤掉了我不需要的内容。
答案 0 :(得分:0)
由于minimatch并没有明确支持否定通配模式,因此大多数库实现类似于&#34;收集所有否定,现在在其余部分调用minimatch,现在应用所有否定。&#34;请参阅https://github.com/wearefractal/glob-stream/blob/master/index.js#L28(注意glob-stream由vinyl-fs使用,公开为gulp's src。)