Javascript 吞咽重命名和基本路径
我正在寻找允许修改路径的基本部分的解决方案。 我有一个类似于“app/assets/theme/file.css”的路径,我使用“app/***.css”模式得到它,我想将它转换为“dist/assets/theme/file.css” 现在我正在做一些类似的事情:Javascript 吞咽重命名和基本路径,javascript,gulp,gulp-rename,Javascript,Gulp,Gulp Rename,我正在寻找允许修改路径的基本部分的解决方案。 我有一个类似于“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; }) 给
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/”部分的方法
我如何才能获得好的结果(如有必要,使用重命名或其他插件)?您可以尝试使用String replace(),如下所示:
gulp.src(路径.样式)
.pipe(重命名(函数(路径)){
var newPath=path.dist+path.dirname;
path.dirname=newPath.replace('app/');
})
在gulp.src
中有一个base
选项,您可以使用它
gulp.src(paths.styles, {base: 'app'})
.pipe(gulp.dest('dist'));
阅读获取更多详细信息。谢谢你的回答,我已经阅读了文档,但我想做的不是移动文件,而是检索路径。@ChrisV那么你可能会对我不久前写的这个回答感兴趣:谢谢你的回答,马特,但我实际上是在寻找一个更通用的可以处理“全局字符串”的东西因为我的例子只是我想做的事情的简化。