Hands of man using online virtual app on mobile phone. Millennial guy chatting on smartphone, using banking services, reading text message, typing, shopping, making call, browsing internet. Close up

Handlebars.js – Die Semantische Template Library

Handlebars.js ist eine Template-Engine für JavaScript. Sie ermöglicht dem Entwickler, mit Hilfe von semantischen Templates Business-Logik und HTML zu trennen. Somit ist es nicht von Nöten, HTML-Code per JavaScript zu generieren. Ein großer Vorteil hierbei ist die Übersichtlichkeit durch das Auslagern des JavaScript- und Handlebars-Codes in eigene .js-Dateien. Die durch Handlebars geschaffene Struktur sorgt für einen verständlichen Code und erleichtert somit die Wartbarkeit.
Ein weiterer Vorteil ist es, dass Templates nicht bei jeder erneuten Verwendung neu kompiliert werden müssen. Gerade in der mobilen Nutzung ist dies ein essentieller Performance-Gewinn.

Wann empfiehlt es sich, Handlebars.js zu verwenden?

Es empfiehlt sich, Handlebars zu verwenden, wenn Seiteninhalte während eines Aufrufes öfters aktualisiert werden (z.B. durch Filterung oder Sortierung), denn hierbei müssen die DOM-Elemente nicht jedesmal im JavaScript-Code neu generiert und eingehängt werden, sondern es werden nur entsprechende Templates gerendert. Würde man all dies von JavaScript aus steuern, müsste man jedes DOM-Element z.B. per createElement()-Methode erstellen und per appendChild()-Methode oder innerHTML-Property einzeln erstellen und einhängen.
Man sollte jedoch die Notwendigkeit einer solchen Library überprüfen, denn bei einfachen Webseiten ohne viel Logik würde Handlebars zu viel Overhead produzieren.

Anwendung

Handlebars bietet neben dem Verwenden von Platzhaltern verschiedene Helper-Functions an, wie zum Beispiel if-Abfragen, foreach-Schleifen und Block Parameters. Um Handlebars anzusprechen, werden jegliche Statements und Variablen in doppelt geschweiften Klammern geschrieben. Der Zugriff auf Funktionen erfolgt jeweils mit einem „#“ und endet mit einem „/“ vor der Anweisung.

Im folgenden Code wird geprüft, ob die Property „items“ des JSON-Objekts „news“ Einträge enthält. Ist dies der Fall wird das entsprechende Template „news-table-template“ an dieser Stelle aufgerufen. Als Parameter wird dem Template das „news“-Objekt mit übergeben.

Handlebars.js – Semantische Template Library-1
Abbildung 1: news-template

Im Template für die News-Tabelle wird nun bis auf den <tbody> die Tabelle vorbereitet.
Die einzelnen Row‘s werden in einer foreach-Schleife erstellt, die durch „news.items“ iteriert. Für jedes Element in diesem Array wird ein <tr>-Tag erstellt und dessen <td>-Tags mit den entsprechenden Informationen befüllt.

Handlebars.js – Semantische Template Library 2
Abbildung 2: news-table-template

Im folgenden JavaScript-Code wird nun zuerst das Template compiliert damit es ab sofort zur Verfügung steht. Anschließend wird mit dem vorhandenen Objekt „renderTemplate“ das Template erstellt und in den <div> mit der ID „content-body“ eingehängt. Dieser JavaScript-Code muss in die Seite per <script>-Tag eingebunden werden.

Handlebars.js – Semantische Template Library 3
Abbildung 3: renderNewsTemplate.js

Worin genau besteht in diesem Fall der Vorteil?

Hierbei wird die Logik einer if-Abfrage und einer foreach-Schleife verwendet, um dynamisch eine Tabelle zu erstellen und diese im HTML zu rendern. Trotz dieser Logik müssen dank Handlebars.js keine HTML-Tags im JavaScript-Code erstellt werden und ebenso wird kein inline-JavaScript im HTML ausgeführt. Somit wird die Logik vom Markup getrennt und es entsteht ein übersichtlicher, gut wartbarer Code.
Zudem bringt Handlebars.js neben den oben genannten Helpern noch viele weitere Build-In Helpers mit sich, jedoch besteht auch die Möglichkeit, selbst solche Helper-Funktionen zu implementieren, welche dann im HTML aufgerufen werden können.
Eine Übersicht über alle Build-In Helpers findet man auf folgender Seite: http://handlebarsjs.com

Anonyme Referenz
Referenz

Produkt-Echtzeitanalyse bei Maschinenbauunternehmen

Ein deutsches Maschninenbauunternehmen ermöglicht mit Hilfe von X-INTEGRATE und Industrie 4.0 Technologie ihren Kunden, den Status jedes Geräts visuell und in Echtzeit zu überwachen.

Digitale Aktenordner auf dunklem Hintergrund – Verwaltungsdigitalisierung im öffentlichen Sektor.
Branche

Öffentliche Verwaltung

Wie gelingt die Digitalisierung der öffentlichen Verwaltung in der Praxis? Die TIMETOACT GROUP zeigt, wie Cloud, IT-Sicherheit und KI Prozesse spürbar beschleunigen.

Referenz

Modernisierung der Kernprüfung

TIMETOACT GROUP unterstützte die Deutsche Rentenversicherung Bund bei der Umsetzung der Kernprüfung in Java mittels OSGi und CICS auf IBM System z.

Logo Microsoft
Technologie 29.06.20

Microsoft

Wir sind Microsoft Solutions Partner in den Bereichen Business Applications, Data & AI, Digital & App Innovation, Infrastructure Azure, Modern Work sowie Security

Event 07.09.21

IT Jobtag 2021

TIMETOACT GROUP als attraktiver Arbeitsplatz für IT Berufe

Oct 06
Social 24.11.22

TIME TO RUN - unser 3. eigener Firmenlauf!

Bei unserem 3. eigenen Firmenlauf zeigten sich unsere Kolleg:innen von ihrer sportlichen Seite.

Sep 24
Technologie 29.06.20

IBM

Wir sind IBM Platinum Business Partner und haben damit seit Jahren den höchsten Partnerstatus bei der IBM.

Technologie Übersicht

HCL

Als „HCL Platinum Business Partner“ haben wir seit Jahren Erfahrung mit diesen Tools und werden diese auch in Zukunft für Sie betreuen.

Logo RedHat
Technologie 02.07.20

RedHat

Wir sind RedHat Advanced Partner. Mit RedHat als dem Marktführer in Open-Source-IT-Lösungen unterstützen wir unsere Kunden ihre Cloud Journey aktiv zu gestalten und umzusetzen.

Social

Wir begrüßen unsere Nachwuchstalente 2020

Auch 2020 haben wir wieder viele junge Nachwuchskräfte bei der TIMETOACT GROUP eingestellt. Denn trotz der aktuellen Lage ist es uns nach wie vor wichtig, neue Talente für uns zu gewinnen und sie in ihrem Einstieg in den Beruf zu begleiten.

Vernetzte Landschaft mit Sonnenuntergang – Digitalisierung in Energieversorgung und Smart Grids.
Branche

Energieversorger

Von Abrechnung bis Archiv: IT-Projekte für die Energiewirtschaft

Kritische Sicherheitslücke in log4j
News

log4j Sicherheitslücke: Produkte vieler Hersteller betroffen

Es wurde eine kritische Sicherheitslücke in der Protokollierungsbibliothek Log4j für Java Anwendungen entdeckt. Unter anderem Produkte von Atlassian, Google, HCL, IBM, Microsoft, und Talend betroffen. Wir unterstützen Sie!

Software & Application
Service

Software & Application

Agilität, Application Modernization, Fullstack Development und Requirement Engineering sind wichtige Aspekte der Business Application Development.

Unternehmen 19.01.22

PKS - zukunftsfähige Software-Transformationen

PKS ist ein Team aus erfahrenen Softwareanalysten, Programmierexperten und Webentwicklern. Seit 1991 planen sie innovative, risikoarme und zukunftsfähige Software-Transformationen weltweit.

News 18.01.21

Neue Partnerschaft mit Hyland

TIMETOACT GROUP und Hyland Software haben ihre Partnerschaft im Bereich ECM/BPM Lösungen angekündigt. Mit Hyland gewinnt die TIMETOACT GROUP einen marktführenden Content Service-Partner, der sich insbesondere in Microsoft Architekturen nahtlos integrieren lässt.

Standort

München

Finden Sie u.a. vor Ort in München: ARS Computer und Consulting GmbH; catworkx GmbH, novaCapta GmbH; TIMETOACT Software & Consulting GmbH

Standort

Winterthur

Finden Sie u.a. catworkx AG und IPG Information Process Group AG in Winterthur: Theaterstrasse 17, 8400 Winterthur

Standort

Sursee

Finden Sie die novaCapta Schweiz AG in Sursee; Industriestraße 5a, 6210 Sursee, Tel: +41 41 39220 00, Mail: info.sursee@novacapta.com

Standort

Wien

Finden Sie u.a. die catworkx GmbH, CLOUDPILOTS Software & Consulting GmbH, IPG Information Process Group Austria GmbH und TIMETOACT GROUP Österreich GmbH in Wien

Social 16.02.21

FAST-elovend 2021 – unsere virtuelle Karnevalsfeier

Kölle Alaf! Auch dieses Jahr feierten die Jecken der TIMETOACT GROUP Fastelovend - aber nur FAST so wie immer. Denn nach unserer (digitalen) Weihnachtsfeier ließen wir uns auch Karneval nicht nehmen und feierten Karneval einfach virtuell.

Bleiben Sie mit dem TIMETOACT GROUP Newsletter auf dem Laufenden!