bind:this für DOM-Elementreferenzen
Ermitteln Sie eine Referenz auf einen DOM-Knoten für imperative Interaktionen.
bind:this für DOM-Elementreferenzen ist eine kostenlose Sveltejs Academy-Lektion auf CoddyKit. Dies ist Lektion 4 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Sveltejs Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Sveltejs Academy-Kurs umfasst insgesamt 4 Lektionen.
Eine DOM-Referenz abrufen
Verwenden Sie bind:this, um eine Referenz auf ein DOM-Element abzurufen, ähnlich wie useRef in React.
Deklarieren und binden
Deklarieren Sie eine Variable und binden Sie sie anschließend.
<script>
let inputEl;
</script>
<input bind:this={inputEl} />Nach dem Mounten verfügbar
Die Referenz ist null, bis die Komponente gemountet wurde. Verwenden Sie onMount, um sicher darauf zuzugreifen.
<script>
import { onMount } from "svelte";
let inputEl;
onMount(() => inputEl.focus());
</script>Imperative Methoden
Rufen Sie DOM-Methoden wie focus() und scrollIntoView() auf oder spielen Sie Medien ab.
function play() { audioEl.play(); }Layout auslesen
Verwenden Sie getBoundingClientRect() für Messungen. Verpacken Sie den Aufruf in tick(), wenn Sie gerade Änderungen vorgenommen haben.
Komponentenreferenzen
bind:this funktioniert auch bei Svelte-Komponenten. Die Variable enthält die Komponenteninstanz.
<MyComp bind:this={comp} />Komponentenmethoden aufrufen
Aus der Komponente exportierte Methoden (über export function) können über die Referenz aufgerufen werden.
Mehrere Elemente
Bei Listen können Sie Referenzen in einem Array sammeln. Erwägen Sie jedoch, stattdessen Actions zu verwenden.
Wann Sie es vermeiden sollten
Bevorzugen Sie nach Möglichkeit deklarative Bindungen und reaktiven Zustand gegenüber imperativen Referenzen.
Aufräumen
Die Referenz wird zu null, wenn das Element ungemountet wird. Vermeiden Sie veraltete Referenzen.
Mit Actions kombinieren
Kapseln Sie wiederkehrende DOM-Muster in einer Svelte-Action, statt bind:this zu verwenden.
Schnelltest
Wann können Sie das gebundene Element verwenden?
Zusammenfassung
bind:this stellt eine DOM- oder Komponentenreferenz bereit, die ab onMount für imperative Aufgaben verfügbar ist.
Häufig gestellte Fragen
Ist die Lektion „bind:this für DOM-Elementreferenzen“ kostenlos?
Ja — der vollständige Text von „bind:this für DOM-Elementreferenzen“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Sveltejs Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Sveltejs Academy-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „bind:this für DOM-Elementreferenzen“?
Ermitteln Sie eine Referenz auf einen DOM-Knoten für imperative Interaktionen. Du übst Sveltejs Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um Sveltejs Academy zu starten?
Keine Vorkenntnisse erforderlich. Sveltejs Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 4 von 4.
Wie lange dauert die Lektion „bind:this für DOM-Elementreferenzen“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser Sveltejs Academy-Lektion Code schreiben und ausführen?
Ja. Jede Sveltejs Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- bind:value für Texteingaben
- bind:checked für Kontrollkästchen
- bind:group für Radio- und Kontrollkästchengruppen
- bind:this für DOM-Elementreferenzen