Ich probiere Gulp bei einem meiner Projekte aus und ich wollte es so laufen lassen, wie ich es bei Grunt watch getan habe. Das bedeutet, dass es weniger Dateien und js-Dateien ansehen, fusseln, zusammenführen, kompilieren und den Browser aktualisieren muss, sobald alles fertig ist.
Ich habe es geschafft mit gulp-browser-sync zu arbeiten, aber aus irgendeinem Grund funktioniert es nur einmal. Ich ändere meine .less-Datei und der Browser lädt neu. Dann, eine zweite Änderung, es kompiliert, aber kein Neuladen geschieht.
Hier ist das Protokoll:
%Vor%Und wenn ich ein zweites Mal auf Speichern klicke:
%Vor%Was das JS anbetrifft, es funktioniert die ganze Zeit. Keine Probleme, auch nachdem die Styles-Aufgabe erledigt wurde, lösen die JS-Änderungen immer noch das Reload aus. Wirklich sind nur die Stile, die Probleme haben.
Hier ist die gulpfile.js
%Vor%Danke für Ihre Hilfe!
Wie wäre es direkt mit
? %Vor%Ich hatte einmal das gleiche Problem beim Ändern von '.jade' Dateien, die nur einmal neu geladen wurden. Dann habe ich browserSync.reload in eine anonyme Funktion wie
eingepackt %Vor%Es funktioniert für mich. Ich weiß nicht, ob es etwas Besonderes an browserSync.reload gibt. Wie wäre es mit einem Versuch? :)
Für mich in Gulp 4 hat die anonyme Funktion das Problem nicht gelöst. Was ich getan habe, war die browserSync.reload () -Funktion in eine Funktion mit einem done callback zu packen:
%Vor%Sind Sie sicher, dass das CSS im Browser nicht geändert wird? Neue Stile werden geladen, ohne dass die Seite erneut geladen werden muss. Zumindest macht das mein Schluck Setup.
Versuchen Sie, die .less-Datei zu ändern und festzustellen, ob die Änderung tatsächlich im Browser sichtbar ist.
Meine Situation ist ein wenig anders, aber es könnte ähnlich genug sein, um Ihnen oder jemand anderem zu helfen. Ich habe gulp + browserSync folgendermaßen eingerichtet:
%Vor%Dies würde starten und die Seite einmal öffnen. Wenn ich die HTML-Seite ändere und sie speichere, könnte ich lint, sass, js und browserSync.reload run sehen, aber der Browser hat nicht aktualisiert. Mein HTML war sehr einfach; das:
%Vor%Ich habe das HTML endlich geändert und es hat angefangen zu arbeiten:
%Vor%Tags und Links javascript gulp gulp-watch gulp-less