Status · Komponente

Switch

Ändert eine Einstellung mit sofortiger Wirkung.

Demo

Ein Markup, drei Adapter, austauschbare Themes. Framework und Theme lassen sich frei kombinieren – die Komponente sieht immer gleich aus und verhält sich gleich. Der Code unter der Vorschau zeigt genau die gewählte Kombination.

Switch
Vanilla@synatix/vanilla + @synatix/theme-kredit
import { enhanceSwitch } from "@synatix/vanilla";
import "@synatix/theme-kredit/theme.css";

// Ein Container im Markup trägt data-theme="kredit".
const root = document.querySelector(
  "[data-scope='switch']"
);
const cleanup = enhanceSwitch(root);

Anatomie

Feste Parts dienen als Selektoren für CSS und Tests.

<div data-scope="switch" data-part="root">
  <span data-part="control">…</span>
  <span data-part="thumb">…</span>
  <span data-part="label">…</span>
  <span data-part="hint">…</span>
</div>

Props

PropTypStandardBeschreibung
checkedbooleanfalseSteuert den Status.
disabledbooleanfalseDeaktiviert den Schalter.
labelstringBenennt die Einstellung.

Tastatur

TasteVerhalten
TabSetzt den Fokus auf das nächste bedienbare Element.
Shift + TabSetzt den Fokus auf das vorherige Element.
LeertasteWechselt den Status.