XTend Dokumentation
Dunkelmodus aktivieren

XTend Developer Center

Build with XTend today

Komponenten-Entwicklung

XTend Komponenten sind lokale Custom Elements, die XTend Classic HTML-/JavaScript-Hosts und Maraca-/RMT-Hosts gemeinsam verwenden. Jede stabile Komponente besitzt eine Runtime-Datei unter components/, eine TypeScript-Deklaration und einen Eintrag in components/manifest.json.

Eine Komponente auswählen

Beginne beim Nutzerproblem, nicht beim Tag-Namen. Form Controls wie x-input und x-toggle besitzen Validierungs- und Form-Association-Verträge. Navigationselemente wie x-menu und x-tabs besitzen Keyboard- und Current-State-Regeln. Surface-Komponenten koordinieren Fenster, Panels oder Overlays über einen Controller.

Die Einzelreferenzen dokumentieren Attribute, Events, Methoden, Slots, CSS Parts und Custom Properties source-basiert. Nicht aufgeführte Shadow-DOM-Strukturen sind privat.

Direkt in HTML verwenden

Der Loader registriert nur Komponenten, die im lokalen Manifest vorkommen:

<script type="module" src="/xtend-loader.js"
  data-manifest="/components/manifest.json"></script>

<x-button variant="primary" label="Speichern"></x-button>

Bei dynamischem Laden wartet ein Host vor Methodenaufrufen auf customElements.whenDefined(&#039;x-button&#039;). Events sollten am Custom Element abonniert werden, nicht an erzeugten internen Controls.

In RMT verwenden

RMT materialisiert Komponenten über DOM-Descriptoren. Attribute werden zu Properties oder Attributen, öffentliche DOM-Events zu deklarativen Commands. Der Vertrag xtend.rmt.component-contract.v1 hält diese Grenze frameworkneutral; der RMT Kernel importiert keine Komponentenklassen.

Styling und Accessibility

Passe zuerst Design Tokens an, danach dokumentierte CSS Custom Properties und Parts. Bewahre zugängliche Namen, Fokusführung, Live Regions und Fehlertexte. Die Komponentenreferenz nennt pro Control Tastatur- und Validierungsverhalten; ein Wrapper muss diese Signale durchreichen.

Weiterlernen

(c) 2026 - CCS Networks | Powered by XRouter PHP Extension