如何使用 Gulp 在文件名前面加上它的父目录?



我正在为项目使用以下层次结构:

src/img/de-de/file1.jpg, file2.gif....
src/img/en-gb/file1.jpg...
src/img/it-it/etc

img 文件夹中有全局映像,每个提到的子目录中都有本地化文件。

我正在使用 gulp 重命名插件为文件名添加自定义前缀 (GulpTest_)。但是,我还想将子目录文件夹名称添加到存储在其中的任何本地化文件中。

例:
src/img/de-de/file1.jpg 将更名为 GulpTest_de-de_file1.jpg

我目前正在使用以下代码来获取子目录中的每个文件并添加 GulpTest 前缀:

// Image Rename Task
gulp.src('.src/img/*/*')
.pipe(rename({prefix: "GulpTest"}))
.pipe(gulp.dest("./dst/" + )

如何修改我的任务,使其连接"前缀 + 子目录 + 文件.jpg"?

谢谢

    .pipe(rename(function (path) {
        console.log('path', path);
        if (path.extname) {
            if (path.dirname === '.') {
                path.dirname = '';
            }
            path.basename = 'GulpTest_' + path.dirname + '_' + path.basename;
            path.dirname = '';
            console.log('path-new', path);
        }
    }))
    .pipe(gulp.dest('dst/'));

最新更新