Sveltejs Academy · Lezione

{#each} annidati e aggiornamenti keyed

Gestisca liste annidate e assicuri aggiornamenti efficienti del DOM con blocchi each keyed.

Lezione 4 di 413 passaggi

{#each} annidati e aggiornamenti keyed è una lezione Sveltejs Academy gratuita su CoddyKit. Questa è la lezione 4 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Sveltejs Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Sveltejs Academy include 4 lezioni in totale.

Due dimensioni

Annidi i blocchi {#each} per eseguire il rendering di tabelle, griglie o alberi.

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

Chiavi a ogni livello

Aggiunga chiavi a ogni livello per ottenere aggiornamenti efficienti.

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

Strutture ad albero

Utilizzi componenti compatibili con la ricorsione o blocchi each per i dati strutturati ad albero.

Evitare le chiavi basate sull'indice

Usare l'indice dell'array come chiave non funziona quando gli elementi vengono inseriti o rimossi nel mezzo. Preferisca un id stabile.

Trappola dei dati mutabili

Modificare array annidati senza riassegnare il riferimento esterno interrompe la reattività. Riassegni al livello superiore.

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

Filtraggio e ordinamento

Restituisca sempre un nuovo array durante il filtraggio o l'ordinamento; modificare l'array sul posto non attiva gli aggiornamenti.

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

Prestazioni

Le chiavi rendono l'aggiunta, la rimozione o lo spostamento degli elementi O(n), invece di costringere a eseguire nuovamente il rendering completo.

Riordinare gli elenchi

Con le chiavi, le animazioni di riordinamento sono semplici: le combini con animate:flip.

Rendering condizionale all'interno

Combini i blocchi {#if} all'interno di each per controllare con precisione quali elementi mostrare.

Un componente per elemento

Per gli elementi complessi, esegua il rendering di un componente figlio per mantenere breve il corpo del ciclo.

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

Modello della paginazione

Per gli elenchi lunghi, usi la paginazione o la virtualizzazione invece di eseguire il rendering di migliaia di nodi.

Verifica rapida

Perché è meglio preferire ID stabili agli indici per le chiavi?

Riepilogo

Annidi i blocchi each per i dati 2D, assegni una chiave a ogni livello usando ID stabili e riassegni sempre le raccolte per attivare gli aggiornamenti.

Gratis per iniziare

Impara HTML con un tutor IA — gratis

Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.

Corsi
41
Lezioni
163

Domande Frequenti

La lezione «{#each} annidati e aggiornamenti keyed» è gratuita?

Sì — il testo completo di «{#each} annidati e aggiornamenti keyed» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Sveltejs Academy, passa a CoddyKit PRO. Il corso Sveltejs Academy include 4 lezioni in totale.

Cosa imparerò in «{#each} annidati e aggiornamenti keyed»?

Gestisca liste annidate e assicuri aggiornamenti efficienti del DOM con blocchi each keyed. Eserciti Sveltejs Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Sveltejs Academy?

Non è richiesta alcuna esperienza precedente. Sveltejs Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 4 di 4.

Quanto tempo richiede la lezione «{#each} annidati e aggiornamenti keyed»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Sveltejs Academy?

Sì. Ogni lezione Sveltejs Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. {#if} {#else if} {#else}
  2. {#each} con indice e chiave
  3. {#key} per forzare il nuovo rendering
  4. {#each} annidati e aggiornamenti keyed
← Torna a Sveltejs Academy