2017-11-10 2 views
0

Ich habe meine src/ Verzeichnis wie folgt:Gulp, Pug - Wie kompiliere ich alle .pug-Dateien in Unterverzeichnissen von src/directory nach/dist, damit sie die Verzeichnishierarchie beibehalten?

src/ 
---about/ 
------history.pug 
------mission.pug 
---contact/ 
------email.pug 
---index.pug 

Ich möchte meine .pug Dateien so erstellt werden, dass sie diese Verzeichnishierarchie auch im dist/ Verzeichnis beibehalten. Etwas wie:

dist/ 
---about/ 
------history.html 
------mission.html 
---contact/ 
------email.html 
---index.html 

Ich benutze Gulp, um die Mops-Dateien zu verarbeiten. Kann dies mit einer Aufgabe erreicht werden, die Schluck verwendet, oder anders? Vielen Dank!

Die Gulp Aufgabe mein Mops-Dateien für die Bearbeitung:

gulp.task('pug', function() { 
    return gulp.src('src/pug/*.pug') 
    .pipe(pug({ 
     basedir: "./" 
    })) 
    .pipe(gulp.dest('dist/html')); 
}) 
+0

Ja, es kann leicht in einer Aufgabe erreicht werden. Sie sollten Ihren Code zeigen. – Mark

+0

@Mark Bearbeitete die Frage, um meine Gulp-Aufgabe aufzunehmen. Wie kann ich es dort integrieren? –

Antwort

1
gulp.task('pug', function() { 
    return gulp.src('src/**/*.pug') 
    .pipe(pug()) 
    .pipe(gulp.dest('dist')); 
}) 

Ihre Mops-Dateien erhalten und sie setzen, wo ich glaube, Sie wollen. In Ihrem Code haben Sie

.pipe(gulp.dest('dist/html')); 

aber es ist kein HTML-Ordner in Ihrer gewünschten Dist Ordner-Struktur. Gleicher Kommentar wie zu

gulp.src('src/pug/*.pug') 

Ihr src Verzeichnis nicht einen Mops Unterordner hat, also warum ist src/pug hier?

Ich glaube auch nicht {basedir: ....} ist eine Option für das Pug-Plugin, also habe ich es entfernt.

+0

Woah danke! Das war einfach genug. Die Verzeichnisse src und dist, die ich in der Frage gezeigt habe, waren nur Beispiele, nicht die echten Verzeichnisse. Ich weiß, dass ich dort klarer hätte sein sollen. Oh, und basedir ist eine Option. Double checked –

+0

Froh, es hat funktioniert. Wenn die Antwort hilfreich war, akzeptiere sie bitte. Vielen Dank. – Mark

Verwandte Themen