2016-03-31 6 views
2

Ich erstelle ein System, das durch jede Datei (php, jsp, html, usw.) lesen, Block-Tags suchen und einen Ersatz basierend auf den Informationen im Block-Tag durchführen kann.Was ist die effizienteste Methode zum Lesen, Neuerstellen und Ersetzen eines Inhaltsblocks in einer Datei mit Gulp?

-Code ich in meiner Datei schreiben würde:

<!-- build:<name> --> 
    { 
     "testObject": { 
      "name": "jonathan", 
      "number": 3, 
      "male": true 
     } 
    } 
<!-- endBuild --> 

Wunsch Ersatz:

<h1>Jonathan</h1> 
<p>is a male and is positioned at #3.</p> 

Wie Sie sehen können, habe ich verwendet, um Komponenten von schluck-html-ersetzen. Ich habe Schluckdaten recherchiert und weiß, wie ich mit gulp.src und gulp.dest Dateien ausbilde. Ich vermisse nur den Lese-, Build- und den Objektschritt. Idealerweise wird dies für mehrere Objektinstanzen im gesamten Dokument funktionieren. Vielen Dank.

Antwort

2

Da Gulp ein Pipe-System verwendet und alle Dateien zu Streams werden, können Sie auf sehr spezifische Weise eigene Pipe/Plug-Ins für die Verarbeitung von Dateien schreiben. Auschecken Gulp Writing Plugins, Abschnitt Ändern des Dateiinhalts.

Bemerkenswerte Erwähnung

gulp-replace könnte tatsächlich tun den Trick

+0

Ich glaube, Sie auf etwas sind hier. gulp-replace erlaubt einen Regex-Suchparameter und speichert ihn zur Verwendung. Ich werde es mit nur diesem Plugin ausprobieren, bevor ich versuche, eins aufzubauen. Vielen Dank! – toad

+1

gulp-replace verwendet zusätzlich zu regex eine Zeichenfolge als Eingabe. –

+0

Ja, das habe ich auch gesehen. Da sich meine Objekte auf der ganzen Seite ändern werden, denke ich, dass Regex der richtige Weg für diesen Anwendungsfall ist. – toad