[BUG-4.9.12] CSS/JS bei Mehrfachverwendung eines Modules
Verfasst: Mi 23. Aug 2017, 13:26
Servus,
verwendet man ein Modul auf einer Seite mehrfach, so werden sowohl die CSS- als auch die JS-Moduldateien mehrfach in die generierten CSS- und JS-Dateien zum Artikel eingebunden. Ist das bei CSS-Dateien noch unproblematisch, so kann es bei der (Mehrfach-)Einbindung der JS-Dateien des Moduls zu unvorhersehbaren Problemen kommen.
Lösung:
Im Code-Generator, in dem aus den Moduldateien die Artikeldateien für CSS und JS generiert werden, sollte eine Überprüfung integriert werden, die pro Modul-ID die entsprechenden Dateien nur ein Mal einbindet und ansonsten die Verarbeitung überspringt. Da die Modulklassen über die bekannte Modul-ID instanziert werden sollte das durch ein Abspeichern in einem Klassen-Array und eine Abfrage mit in_array() bei jedem Schleifendurchlauf recht einfach umsetzbar sein.
Gruß aus Franken
Ortwin
verwendet man ein Modul auf einer Seite mehrfach, so werden sowohl die CSS- als auch die JS-Moduldateien mehrfach in die generierten CSS- und JS-Dateien zum Artikel eingebunden. Ist das bei CSS-Dateien noch unproblematisch, so kann es bei der (Mehrfach-)Einbindung der JS-Dateien des Moduls zu unvorhersehbaren Problemen kommen.
Lösung:
Im Code-Generator, in dem aus den Moduldateien die Artikeldateien für CSS und JS generiert werden, sollte eine Überprüfung integriert werden, die pro Modul-ID die entsprechenden Dateien nur ein Mal einbindet und ansonsten die Verarbeitung überspringt. Da die Modulklassen über die bekannte Modul-ID instanziert werden sollte das durch ein Abspeichern in einem Klassen-Array und eine Abfrage mit in_array() bei jedem Schleifendurchlauf recht einfach umsetzbar sein.
Gruß aus Franken
Ortwin