Verwenden einer Version von dem, was grunt-contrib-watch
zum Kompilieren nur geänderter Dateien hier empfiehlt: Ссылка
Das funktioniert gut (wieder mit einer Variation, die ich dafür geschrieben habe: Ссылка )
Das Problem liegt vor, wenn include
in Jade-Vorlagen verwendet wird. Das bedeutet, dass Sie andere Jade-Vorlagen einschließen, um die vollständige HTML-Datei zu erstellen.
Die Verwendung der singulären Lösung für die Kompilierung funktioniert nicht, wenn eine .jade
-Datei, an der Sie gerade arbeiten, mit include current_working_jade.jade
eingebettet wird - die einschließende Datei wird nicht erneut kompiliert.
Gibt es Workarounds für dieses neben Kompilieren aller jade
-Dateien von Grund auf neu? Dies verursacht ein Problem, wenn Sie etwa 60 große Jade-Dateien haben, die jedes Mal kompiliert werden.
Die einzige mögliche Lösung, die ich mir vorstellen kann, ist entweder die Zuordnung von Jade-Templates-Abhängigkeiten entweder extern oder mit Verzeichnissen, aber ich kenne keine Werkzeuge / Plugins, die das tun ...
Nachdem ich bereits mit der Arbeit an einem Gerüst begonnen habe, das eine Art Jade sourcemap
erzeugt, habe ich dieses großartige Projekt gefunden, das dieses Problem bereits löst:
Verwendung ist wie folgt:
npm install jade-inheritance --save-dev
Wo Sie eine Liste der abhängigen Dateien von einer Jade erhalten möchten:
var JadeInheritance = require('jade-inheritance');
var inheritance = new JadeInheritance(file, basedirname, {basedir:basedirname});
Wenn Sie die Datei herunterladen möchten:
depenedentFiles = inheritance.files;
Das Projekt zeigt auch, wie man das Konzept mit grunt.watch
anwendet, um nur die geänderten jade
Dateien mit ihren Abhängigkeiten zu kompilieren, genau was ich brauchte:
Ich stelle mir so etwas vor wie das Überprüfen aller Jade-Dateien, und wenn sie die geänderte Datei enthalten, dann kompiliere sie auch neu. Sollte nicht zu schwer sein. Pseudocode:
%Vor%Fügen Sie diese Dateien jetzt der Kompilieraufgabe hinzu.
Tags und Links compilation javascript gruntjs pug grunt-contrib-watch