Sveltejs Academy · Lektion

Verschachtelte {#each}-Blöcke und schlüsselbasierte Aktualisierungen

Verarbeiten Sie verschachtelte Listen und stellen Sie mit schlüsselbasierten each-Blöcken effiziente DOM-Aktualisierungen sicher.

Lektion 4 von 413 Schritte

Verschachtelte {#each}-Blöcke und schlüsselbasierte Aktualisierungen 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.

Zwei Dimensionen

Verschachteln Sie {#each}-Blöcke, um Tabellen, Raster oder Bäume zu rendern.

{#each rows as row, i}
  <tr>
    {#each row as cell, j}
      <td>{cell}</td>
    {/each}
  </tr>
{/each}

Schlüssel auf jeder Ebene

Fügen Sie auf jeder Ebene Schlüssel hinzu, um effiziente Aktualisierungen zu ermöglichen.

{#each rows as row (row.id)}
  {#each row.cells as cell (cell.id)}
    ...
  {/each}
{/each}

Baumstrukturen

Verwenden Sie rekursionsfreundliche Komponenten oder each-Blöcke für baumartige Daten.

Indexschlüssel vermeiden

Die Verwendung des Array-Index als Schlüssel funktioniert nicht, wenn Elemente in der Mitte eingefügt oder entfernt werden. Bevorzugen Sie eine stabile ID.

Fallstrick bei veränderlichen Daten

Das Verändern verschachtelter Arrays ohne erneute Zuweisung der äußeren Referenz unterbricht die Reaktivität. Weisen Sie auf der obersten Ebene erneut zu.

rows = rows.map(r => r.id === id ? {...r, name} : r);

Filtern und Sortieren

Geben Sie beim Filtern oder Sortieren immer ein neues Array zurück; eine Änderung direkt im bestehenden Array löst keine Aktualisierungen aus.

sorted = [...items].sort();

Leistung

Schlüssel machen das Hinzufügen, Entfernen oder Verschieben von Elementen zu O(n), statt vollständige erneute Render-Vorgänge zu erzwingen.

Listen umordnen

Mit Schlüsseln sind Animationen beim Umordnen einfach: Kombinieren Sie sie mit animate:flip.

Bedingtes Rendern im Inneren

Kombinieren Sie {#if}-Blöcke innerhalb eines each-Blocks, um genau zu steuern, welche Elemente angezeigt werden.

Komponente pro Element

Rendern Sie für komplexe Elemente eine untergeordnete Komponente, damit der Schleifenkörper übersichtlich bleibt.

{#each todos as todo (todo.id)}
  <Todo {todo} />
{/each}

Muster für Seitennummerierung

Seitennummerieren oder virtualisieren Sie lange Listen, statt Tausende von Knoten zu rendern.

Kurze Überprüfung

Warum sollten Sie für Schlüssel stabile IDs statt Indizes bevorzugen?

Zusammenfassung

Verschachteln Sie each-Blöcke für zweidimensionale Daten, verwenden Sie auf jeder Ebene stabile IDs als Schlüssel und weisen Sie Sammlungen immer erneut zu, um Aktualisierungen auszulösen.

Kostenlos starten

Lerne HTML mit einem KI-Tutor — kostenlos

Schreibe und führe echten Code in deinem Browser aus, bekomme sofortige Hilfe von einem 24/7 KI-Tutor und setze dein Lernen im Web oder in der App fort.

Kurse
41
Lektionen
163

Häufig gestellte Fragen

Ist die Lektion „Verschachtelte {#each}-Blöcke und schlüsselbasierte Aktualisierungen“ kostenlos?

Ja — der vollständige Text von „Verschachtelte {#each}-Blöcke und schlüsselbasierte Aktualisierungen“ 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 „Verschachtelte {#each}-Blöcke und schlüsselbasierte Aktualisierungen“?

Verarbeiten Sie verschachtelte Listen und stellen Sie mit schlüsselbasierten each-Blöcken effiziente DOM-Aktualisierungen sicher. 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 „Verschachtelte {#each}-Blöcke und schlüsselbasierte Aktualisierungen“?

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

  1. {#if} {#else if} {#else}
  2. {#each} mit Index und Schlüssel
  3. {#key} zum Erzwingen eines erneuten Renderns
  4. Verschachtelte {#each}-Blöcke und schlüsselbasierte Aktualisierungen
← Zurück zu Sveltejs Academy