我正在寻找一个解决方案,允许修改路径的基础部分。我有一个路径像'app/assets/theme/file.css',我得到'app/**/*.css'模式,我想把它转换为'dist/assets/theme/file.css'。
现在我做的是:
gulp.src(paths.styles)
.pipe(rename(function(path) {
path.dirname = paths.dist + path.dirname;
})
给我'app/dist/assets/theme/file.css'而不是'dist/assets/theme/file.css'。我找不到擦除"app/"部分的方法。
如何获得良好的结果(使用重命名或其他插件,如果有必要)?
在gulp.src
中有一个base
选项,您可以使用
gulp.src(paths.styles, {base: 'app'})
.pipe(gulp.dest('dist'));
详细信息请参阅文档
您可以尝试使用String replace(),就像这样:
gulp.src(paths.styles)
.pipe(rename(function(path) {
var newPath = paths.dist + path.dirname;
path.dirname = newPath.replace('app/');
})