Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/389.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 吞咽重命名和基本路径_Javascript_Gulp_Gulp Rename - Fatal编程技术网

Javascript 吞咽重命名和基本路径

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; }) 给

我正在寻找允许修改路径的基本部分的解决方案。 我有一个类似于“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/”部分的方法


我如何才能获得好的结果(如有必要,使用重命名或其他插件)?

您可以尝试使用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那么你可能会对我不久前写的这个回答感兴趣:谢谢你的回答,马特,但我实际上是在寻找一个更通用的可以处理“全局字符串”的东西因为我的例子只是我想做的事情的简化。