Was ich versuche zu erreichen ist, dass, wenn ich habe 2 Komponenten Knoten:Last nur Komponenten-Skripte, die in der aktuellen Seite sind
Komponente1
- clientlib
- Teil1 .js
- clientlib
Component2
- clientlib
- component2.js
- clientlib
und i ziehen, um sie in page1, dann, wenn page1 erzeugt wird, nur component1.js und Component2 .js wird beim Navigieren zu Seite1 geladen.
Ein Ansatz, den ich sah, ist Gewohnheit zu verwenden Tag Library
wie hier beschrieben: http://www.icidigital.com/blog/best-approaches-clientlibs-aem-part-3/
Ich habe zwei Fragen:
1) gibt es eine bestehende Funktion in AEM dies zu tun?
2) Wenn nicht, was ist der einfachste Weg zum Erstellen solcher benutzerdefinierten Tag Library
?
EDIT:
Angenommen, es gibt keine Möglichkeit, alle Komponenten clientLibs nur enthalten ist, sondern laden nur diejenigen, die auf der Seite hinzugefügt werden.
Dies ist standardmäßig in AEM verfügbar. Hier ist die [offizielle Dokumentation für AEM 6.2] (https://docs.adobe.com/docs/en/aem/6-2/develop/the-basics/clientlibs.html) und gilt auch für frühere Versionen. – Abhishek
Es wurde nur beschrieben, wie Skripte bestimmter Kategorien geladen werden. Ich kann keinen Verweis darauf finden, wie Skripte von Komponenten geladen werden, die sich auf der aktuellen Seite befinden. Andere Skripte von Komponenten derselben Kategorie, die nicht auf dieser Seite sind, werden nicht verwendet loaded, ty – jony89
Komponentenspezifische Skripte sollten mit einer eindeutigen Kategorie definiert werden, die dieser Komponente entspricht. Wenn Sie dieselbe Komponente auf mehreren Seiten verwenden, sind diese Skripts enthalten. Wenn Sie den Skripten mehrerer Komponenten eine gemeinsame Kategorie zuweisen, sollten sie einige allgemeine Funktionen für alle Komponenten bereitstellen. – Abhishek