Webframework: Ember 3.20 glimmt außerhalb des Dokuments

Das Java-Script-Framework Ember bringt im aktuellen Release eine öffentliche API zum Rendern von Inhalten außerhalb des regulären HTML-Verlaufs.

Lesezeit: 1 Min.
In Pocket speichern
vorlesen Druckansicht Kommentare lesen 2 Beiträge
Von

Das Ember-Team hat Version 3.20 des quelloffenen JavaScript-Frameworks veröffentlicht. Das aktuelle Release bringt wie schon die letzten Versionen wenig Neues mit. Nennenswert ist vor allem die API für {{in-element}} zum Definieren von Inhalten, die nicht im regulären HTML-Verlauf liegen.

Die neue API ähnelt weitgehend der bisher verfügbaren {{-in-element}}. Der wesentliche Unterschied ist nicht der fehlende Bindestrich am Anfang, sondern dass die alte API als privat gekennzeichnet war, während die neue öffentlich ist. Damit signalisiert das Ember-Team, dass die API stabil ist, während private API-Aufrufe jederzeit aus dem Framework verschwinden können.

Die API hat denselben Zweck wie die Plug-ins ember-elsewhere und ember-wormhole: Entwicklerinnen und Entwickler können darüber Elemente definieren, die aus dem regulären DOM-Verlauf ausbrechen sollen, also beispielsweise für Kindelemente, die sich wie Top-Level-DOM-Elemente verhalten – beispielsweise ein modaler Dialog.

Für die Definition benötigt {{in-element}} ein Zielelement als Parameter. Der Block innerhalb des Konstrukts erscheint nicht beim Definieren, sondern beim Rendern des Zielelements:

{{#-in-element destinationElement}}
  <div>Inhalt des Elements</div>
{{/-in-element}}

Wenn sich die Position des Zielelements ändert, rendert Ember den definierten Inhalt an der neuen Stelle. Im Vergleich zu der privaten API gibt es noch einen nennenswerten Unterschied: Die neue API überschreibt den Inhalt des Ziels, wird also zu dessen komplettem innerHTML, während die alte den Block an den im Ziel vorhandenen angehängt hat. Wer das mit {{in-element}} erreichen möchte, muss zusätzlich insertBefore=null angeben.

Darüber hinaus bringt Ember 3.20 zwei kleine Ergänzungen für das Kommandozeilen-Interface Ember-CLI und die Daten-Library Ember Data mit. Letztere erweitert den JSONAPISerializer um die Property isEmbeddedRecordsMixinCompatible, um sie manuell als kompatibel mit EmbeddedRecordsMixin zu kennzeichnen.

Weitere Neuerungen und als überholt gekennzeichnete Methoden lassen sich dem Ember-Blog entnehmen. Immerhin ist das aktuelle Release das erste mit einer Neuerung seit dem größeren Update in Version 3.15, das den zuvor lange vorbereiteten Umstieg auf Octane integriert hatte

(rme)