0

Ich benutze Gulp, um automatisch zu kopieren/bündeln/kompilieren meine Dateien, ich kopiere grundsätzlich die gesamte Ordnerstruktur aus dem Basisordner (MyProject/Scripts) nach wwwroot/js.Ändern der Ausgabe Verzeichnisse/Dateien in Kleinbuchstaben in Gulp

Während des Kopierens/Verarbeitens möchte ich den Ausgabepfad/Dateinamen in Kleinbuchstaben umbenennen. Ich habe das ChangeCase-Modul und das Rename-Modul gefunden, aber ich kann es in meinem Setup unten nicht finden.

gulp.task("compile:less", function() { 
    return gulp.src(paths.lessSrc) 
     .pipe(less()) 
     //how can I get to currentdirectory so I can use it for the rename? maybe there is another way 
     //.pipe(rename({ dirname: changeCase.lowerCase(??currentdir??) })) 
     .pipe(gulp.dest(paths.cssTarget)); 
}); 

und

gulp.task("compile:js", function() { 
    return gulp.src(paths.jsOrigin) 
     //simple copy of folders and files but how to rename all to lowercase? 
     .pipe(gulp.dest(paths.jsTarget)); 
}); 
+0

Haben Sie versucht gerade dabei, diese Art von Syntax: dirname: changeCase.lowerCase()? Sie verwenden also nur die Funktion zum Umbenennen von Namen. – Prototype

+0

Habe nicht versucht, aber antworten unten funktioniert :) Danke trotzdem – user2713516

Antwort

2

Sie können eine Rückruffunktion gulp-rename passieren:

gulp.task("compile:js", function() { 
    return gulp.src(paths.jsOrigin) 
    .pipe(rename(function(path) { 
     path.dirname = changeCase.lowerCase(path.dirname); 
     path.basename = changeCase.lowerCase(path.basename); 
     path.extname = changeCase.lowerCase(path.extname); 
    })) 
    .pipe(gulp.dest(paths.jsTarget)); 
}); 
+0

Das funktioniert :) danke – user2713516