我正在尝试将需要处理的文件数组传递给gulp.src。这就是它所代表的数组。
['bower_components/jquery/jquery.js', 'bower_components/superscrollorama/js/greensock/TweenMax.min.js', 'bower_components/superscrollorama/jquery.superscrollorama.js' ] 我发现虽然gulp.src似乎并不喜欢,并且第三个元素没有使其进入最终目标。
我发现当我引入一些通配符时,一切工作正常:
['bower_components//jquery.js', 'bower_components//js/greensock/TweenMax.min.js', 'bower_components/**/jquery.superscrollorama.js' ] 但为什么?与通配符的工作方式有关吗?我已经用Google搜索,但找不到。
也许这不是实现globbing的预期目的,但对我来说,以这种方式工作并不有意义。谁能阐明一些想法? 问题来源于stack overflow
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
当您传递完整路径数组时,每个文件都会被独立处理。全局不知道路径的根在哪里(实际上,它是根据第一个全局进行猜测的)。因此,每个文件都植根于其包含的文件夹中,并且相对路径为空。
但是,有一个简单的解决方案。将键base为第二个参数的对象传递给gulp.src,所有内容都会具有正确的相对路径:
return gulp.src(['bower_components/jquery/jquery.js', 'bower_components/superscrollorama/js/greensock/TweenMax.min.js', 'bower_components/superscrollorama/jquery.superscrollorama.js' ], {base: 'bower_components/'}) .pipe(...);