ich schluck-stylefmt verwenden und es jedes Mal, wenn ich jede CSS-Datei zu speichern laufen:Ich mag automatisch auf meine CSS-Quelldateien beheben, aber ich erhalte eine Endlosschleife
function stylelint() {
return gulp.src('src/**/*.css')
.pipe($.stylefmt())
.pipe(gulp.dest('src/'));
}
Zur selben Zeit gulp.watch Uhren der Pfad src/**/*.css
und führen Sie stylelint Aufgabe erneut aus.
Console Ausgabe:
[16:32:24] Starting 'stylelint'...
[16:32:25] Finished 'stylelint' after 554 ms
[16:32:25] Starting 'stylelint'...
[16:32:25] Finished 'stylelint' after 60 ms
[16:32:25] Starting 'stylelint'...
[16:32:25] Finished 'stylelint' after 33 ms
[16:32:25] Starting 'stylelint'...
[16:32:25] Finished 'stylelint' after 36 ms
[16:32:26] Starting 'stylelint'...
[16:32:26] Finished 'stylelint' after 34 ms
[16:32:26] Starting 'stylelint'...
[16:32:26] Finished 'stylelint' after 29 ms
[16:32:26] Starting 'stylelint'...
[16:32:26] Finished 'stylelint' after 27 ms
[16:32:26] Starting 'stylelint'…
[16:32:26] Finished 'stylelint' after 32 ms
Es gibt eine Möglichkeit, dieses Verhalten zu korrigieren und stylelint Aufgabe nur einmal ausführen?
UPD. Ich fügte hinzu gulp-cached und jetzt läuft es nur zweimal. Kann ich es verbessern, um einmal zu laufen?
function stylelint() {
return gulp.src('src/**/*.css')
.pipe($.cached('stylelint'))
.pipe($.stylefmt())
.pipe($.cached('stylelint'))
.pipe(gulp.dest('src/'));
}
Mögliche Duplikat [GULP: Ändern eines überwachten Datei an Ort und Stelle ohne eine Endlosschleife verursacht] (http: // Stackoverflow. com/questions/37602702/gulp-modify-a-watch-Datei-in-Place-ohne-verursacht-eine-Endlos-Schleife) –
@SvenSchoenung Danke, aber es half teilweise. Besser als nichts. Jetzt läuft es nur zweimal :) Soll ich meine Frage löschen? Ich bin neu hier. –
Bearbeitete die Antwort mit einer Lösung, die die Aufgabe nur einmal ausführen sollte. –