Frage zum Wiki-Artikel „template“ fertig geladen
bearbeitet von Rolf BHallo Henry,
> Beispiel, ich packe in einen Template-Tag diverse externe Scripts hinein,
Es tut mir fast weh, aber ich möchte das auf self-typische Weise beantworten: Löse dieses Problem so, dass Du es gar nicht entstehen lässt.
Wirklich. Ich würde das lassen. Entweder ist das Template ein Singleton, der kein- oder einmal aktiv wird, und über eine ID gefunden werden kann. Sowas kann eigenes Script mitbringen.
Im Normalfall ist ein Template aber mehrfach verwendbar, und wenn es dann Script lädt, lädt auch das Script mehrfach. Ohne zu wissen, wo nun das neue Stück DOM steht, das aus dem Template entstanden ist.
Templates sind aus meiner Sicht etwas, das zum Gesamtkonzept einer Seite gehört. Ich gestalte eine Seite, und ich erzeuge mit JS neue Teile im DOM. Diese hole ich aus einem Template. Wenn diese Teile zum Funktionieren Script benötigen, dann sollte dieses Script unabhängig vom Template geladen werden.
Wenn das Script auf Teile des Templates aufmerksam gemacht werden muss, sollte es eine Registrierfunktion anbieten, mit der man das neue DOM-Fragment mit dem Script verknüpft. Oft ist das aber nicht nötig, über Event Bubbling kann man schon eine Menge tun.
Die Frage ist auch, ob ein Template dann der richtige Weg ist oder ob man nicht über ein custom element nachdenken sollte.
_Rolf_
--
sumpsi - posui - obstruxi
Frage zum Wiki-Artikel „template“ fertig geladen
bearbeitet von Rolf BHallo Henry,
> Beispiel, ich packe in einen Template-Tag diverse externe Scripts hinein,
Es tut mir fast weh, aber ich möchte das auf self-typsiche Weise beantworten: Löse dieses Problem so, dass Du es gar nicht entstehen lässt.
Wirklich. Ich würde das lassen. Entweder ist das Template ein Singleton, der kein- oder einmal aktiv wird, und über eine ID gefunden werden kann. Sowas kann eigenes Script mitbringen.
Im Normalfall ist ein Template aber mehrfach verwendbar, und wenn es dann Script lädt, lädt auch das Script mehrfach. Ohne zu wissen, wo nun das neue Stück DOM steht, das aus dem Template entstanden ist.
Templates sind aus meiner Sicht etwas, das zum Gesamtkonzept einer Seite gehört. Ich gestalte eine Seite, und ich erzeuge mit JS neue Teile im DOM. Diese hole ich aus einem Template. Wenn diese Teile zum Funktionieren Script benötigen, dann sollte dieses Script unabhängig vom Template geladen werden.
Wenn das Script auf Teile des Templates aufmerksam gemacht werden muss, sollte es eine Registrierfunktion anbieten, mit der man das neue DOM-Fragment mit dem Script verknüpft. Oft ist das aber nicht nötig, über Event Bubbling kann man schon eine Menge tun.
Die Frage ist auch, ob ein Template dann der richtige Weg ist oder ob man nicht über ein custom element nachdenken sollte.
_Rolf_
--
sumpsi - posui - obstruxi