Zum Hauptinhalt springen

Frontend-Überwachung

In ChatGPT öffnen

Der Frontend-Watch baut die Quellen unter src/main/frontend neu auf, während die App läuft, und sendet die Ausgabe an den Browser. Es ist die Entwicklungsseite des Frontend-Bundlers und erfordert, dass webforj.devtools.livereload.enabled aktiviert ist, siehe die Einstellungen.

Watch ausführen​

Führen Sie das Ziel watch vor dem Ziel aus, das die App startet. Ein Archetypprojekt setzt dies als sein Standardziel, sodass mvn ohne Argumente beide ausführt:

mvn compile webforj:watch spring-boot:run
mvn compile webforj:watch jetty:run

In BBjServices startet der Watch das Entwicklungs-Run selbst:

mvn compile webforj:watch

Um den Watch als eigenständigen Build-Schritt auszuführen, siehe Build und Tests.

Wie die Ausgabe angewendet wird​

Die Browseraktion hängt von der produzierten Ausgabe ab, nicht von der bearbeiteten Datei:

AusgabeBrowseraktion
Stylesheet, aus einer .css, .scss, .sass oder .less QuelleWird vor Ort angewendet. Kein Reload, Formulardaten und Scrollposition bleiben.
BildWird vor Ort ersetzt. Kein Reload.
Jede andere Ausgabe, wie kompilierte .ts, .tsx oder .jsDie Ansicht wird neu geladen.

Wenn ein Build mehrere Dateien erzeugt, wendet der Browser sie nur dann vor Ort an, wenn jede Datei qualifiziert. Andernfalls wird einmal neu geladen, sodass eine Änderung nie teilweise angewendet wird.

Während eines Serverneustarts​

Eine Java-Änderung ohne ein Hotswap-Tool startet den Server neu. Während des Neustarts:

  • Angewendete Styles bleiben auf der Seite.
  • Ein Indikator zeigt an, solange der Server offline ist. Er erscheint nur beim Neustart, nicht bei einem manuellen Reload.
  • Die Seite wird neu geladen, wenn die App bereit ist, nicht vorher.

Eine Hinzufügung oder Entfernung von @BundleEntry tritt in Kraft, wenn dieser Neustart abgeschlossen ist.

webforJ-Team

Brauchst du Hilfe?

Sprechen Sie mit den Entwicklern von webforJ über Ihr Projekt.

Kontaktieren Sie uns