为什么Gulp.src不喜欢通过一系列完整的文件路径



我正在尝试通过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' ]

但是为什么?与Globing的工作方式有关吗?我已经搜索过,但找不到。

也许这不是射击的预期目的,但对我来说应该以这种方式起作用是没有意义的。任何人都可以放光吗?

当您传递完整路径的数组时,每个文件将独立处理。地球不知道路径的根源在哪里(实际上,它根据第一个地球猜测)。因此,每个文件都植根于其中包含的文件夹,并且相对路径为空。

但是,有一个简单的解决方案。将键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(...);

最新更新