跳到主要内容

在使用 glob 匹配时保持目录结构

如果你计划从一个目录中读取几个文件/文件夹并保持它们的相对路径,你需要将 {base: '.'} 作为第二个参数传递给 gulp.src()

例如,如果你有一个如下的目录结构

开发设置

并且只想读取一些文件,比如

[ 'index.html',
'css/**',
'js/**',
'lib/**',
'images/**',
'plugin/**'
]

在这种情况下,Gulp 将读取(比如说)css 文件夹的所有子文件夹,并将它们相对于你的根文件夹进行排列,它们将不再是 css 的子文件夹。glob 匹配后的输出将如下所示

压缩-解压缩

如果你想保持结构,你需要将 {base: '.'} 传递给 gulp.src()。例如

gulp.task('task', function () {
return gulp.src(['index.html',
'css/**',
'js/**',
'lib/**',
'images/**',
'plugin/**'
], {base: '.'})
.pipe(operation1())
.pipe(operation2());
});

而你的 operation1() 的输入将是一个如下的文件夹结构

使用-base