Hallo zusammen ![]()
Heute Nachmittag habe ich an der Optimierung des anfänglichen Ladens des Frontends gearbeitet, das manchmal auf dem Handy etwas langsam sein kann, wenn das Netzwerk schlecht ist, finde ich.
Durchgeführte Verbesserungen:
Dynamisches Laden der schweren Bibliotheken :
- HLS.js (Kamerastreaming)
- Leaflet (Weltkarte)
- ApexChart (Diagramme)
Diese Bibliotheken werden nun nur noch bei Bedarf geladen und entlasten so das Haupt-Bundle.
Optimierung des Code-Splittings :
Einige Routen waren nicht korrekt getrennt, was das Laden unnötig aufwendig machte, indem der Code dieser Routen im Haupt-JS-Bundle enthalten war.
Ergebnis:
Das Haupt-JS-Bundle reduziert sich von 2,94 MB auf 694 KB, was die Ladezeit deutlich verkürzt.
Natürlich ist nichts magisch, die aus dem Haupt-Bundle entfernte Größe wird auf das Bundle jeder Route hinzugefügt, aber die Idee ist, dass wir nur noch das laden, was wir brauchen.
Mein Ziel ist es, das Laden des Dashboards so schnell wie möglich zu gestalten, denn wenn ich auf Gladys auf meinem Handy zugreife, ist das oft nur, um eine Lampe auszuschalten, und wenn das Laden verlangsamt wird, nur weil das Frontend unnötige Dinge lädt, ist das schade ![]()
Testet und gebt Feedback!
Ich habe einen Gladys Plus Build mit diesen Verbesserungen erstellt:
https://dynamically-import-librairie.gladys-plus.pages.dev
Ich freue mich auf eure Eindrücke! ![]()