Web Components versprechen universelle Frontend-Komponenten, frei von Framework-Fesseln und Dependency-Depression. Das Problem: Web Components sind komplex, manche APIs wirken eigenartig, und das sie umgebende Ökosystem ist unübersichtlich.
In diesem Tutorial beantwortet dir Peter Kröner nicht nur die obigen Fragen, sondern präsentiert alles Wissenswerte zu Web Components.
In diesem Tutorial lernen wir, wie der Komponenten-Eintopf wirklich gemacht wird. Wir orientieren uns im Ökosystem und erhalten einen Überblick über die Fähigkeiten und Grenzen der Standards rund um Web Components.
Von den absoluten API-Grundlagen bis zum Einsatz ausgewachsener Komponenten-Frameworks lassen wir keinen Schritt aus. In jedem Abschnitt unserer Reise erfahren wir nicht nur, wie etwas funktioniert, sondern auch, warum.
Dieses Tutorial macht uns nicht nur zu Web-Component-Expert:innen, sondern vertieft auch unser Verständnis der Web-Plattform insgesamt.
In der ersten Lesson steigen wir in die Welt der Web Components ein. Wir richten unser Setup ein, klären die Ziele des Tutorials – und schreiben unser erstes „Hello World“ und schauen uns Content-Attribute an. Dabei beantworten wir die Grundfrage: Was sind Web Components eigentlich?
In der zweiten Lesson schauen wir uns an, wie Web Components im Vergleich zu Frameworks wie React oder Vue abschneiden. Du lernst, wie du mit dem Shadow DOM saubere, gekapselte UI-Komponenten baust, welche Best Practices sich bewährt haben – und welche typischen Stolperfallen du besser vermeidest.
In dieser Lesson dreht sich alles um den Shadow DOM – was er ist, warum er wichtig ist und wie du ihn gezielt einsetzen kannst. Wir schauen uns an, wie der imperative Shadow DOM funktioniert, wie er mit Web Components zusammenspielt und was beim Eventhandling im Shadow Tree zu beachten ist. Zum Abschluss behandeln wir das Konzept clonable und dessen Bedeutung im Zusammenhang mit wiederverwendbaren Komponenten.
In der vierten Lesson geht es um das Slot-System im Shadow DOM. Du lernst, wie externe Inhalte gezielt in Web Components eingefügt werden, wie sich verschachtelte Slots verhalten, wie Slot-Zuweisungen funktionieren und welche Rolle das Pseudoelement ::slotted spielt.
In dieser Lesson schauen wir uns die Herausforderungen und Möglichkeiten von Server-Side Rendering mit Web Components an. Du erfährst, wie Tools wie Happy DOM funktionieren, warum SSR überhaupt notwendig ist, welche Strategien es für CSS gibt, wie unterschiedliche Architekturansätze aussehen können – und worauf du achten musst, um typische Fallen und fehlende Features zu umgehen.
In dieser Lesson werfen wir einen umfassenden Blick auf das Event-System in Web Components. Wir starten mit einem Überblick über native Events und steigen dann tiefer ein: Du lernst, wie man eigene Events ohne CustomEvent erstellt, wie sich Events im Shadow DOM verhalten (Stichwort: composed) und welche Rolle Lifecycle-Callbacks dabei spielen. Zum Abschluss betrachten wir, wie Komponenten effektiv miteinander kommunizieren – ein zentraler Aspekt für komplexe Anwendungen.
In dieser Lesson widmen wir uns Custom Events – also selbst definierten Ereignissen, mit denen Komponenten untereinander kommunizieren können. Du lernst, wie man eigene Events erstellt, auslöst und mit ihnen sicher und kontrolliert arbeitet. Dabei gehen wir auch auf Event-Konfigurationen ein wie bubbles, composed und detail, um das Verhalten deiner Events gezielt zu steuern.
Diese Lesson vertieft den Blick auf moderne Event-Patterns in Web Components. Im Fokus stehen Observer-Ansätze, mit denen sich Zustandsänderungen oder externe Trigger elegant beobachten lassen – vom einfachen Property-Watcher bis hin zu strukturierten Architekturen. Abschließend werfen wir einen Blick auf gängige Kommunikationsmuster in komplexeren Komponentenlandschaften und vergleichen ihre Vor- und Nachteile.
In dieser Lesson stellen wir dir eine Auswahl nützlicher Tools und Libraries vor, mit denen du die Entwicklung von Web Components effizienter und strukturierter gestalten kannst. Wir starten mit TypeScript als Basis für typensichere Komponenten, schauen uns Ornament als schlankes Utility-Toolkit an und vergleichen verschiedene Rendering-Strategien – von gar keiner bis hin zu Libraries wie Preact und uhtml. Außerdem werfen wir einen Blick auf Lit, eine der populärsten Libraries für Web Components, und entwickeln abschließend ein eigenes kleines Mini-Framework.
Zum Abschluss der Reihe entwickeln wir eine vollständige Dark-Mode-Komponente – von Grund auf und praxisnah. Wir starten mit dem Setup und definieren eine klare API, bevor wir das User Interface gestalten und ein einfaches State Management umsetzen. Danach integrieren wir die Komponente in ein React-Projekt, um den Einsatz in realen Anwendungen zu demonstrieren. Zum Schluss werfen wir einen Blick zurück und geben einen Ausblick auf mögliche Erweiterungen.
Der bekannte Webtechnologieexperte und Buchautor Peter Kröner forscht über die Webstandards von Morgen. Was er über HTML5, CSS3 und neue JavaScript-Standards herausfindet, schreibt er in Bücher und Blogposts oder vermittelt es in Seminaren, Workshops und Vorträgen im ganzen Land weiter. Zuvor war er als selbstständiger Webdesigner und Frontend-Entwickler tätig
*Preis pro Nutzer zzgl. MwSt.
Du bist bereits ein Fullstack Member? Dann logge dich auf entwickler.de ein und starte sofort dein nächstes Tutorial! Jetzt starten!