0Pricing
Sveltejs Academy · Lezione

Dati condivisi tra i layout

Carichi i dati in un layout genitore e vi acceda nelle pagine e nei layout figli.

Dati condivisi tra i layout è 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.

Caricamenti del layout

Un +layout.js o +layout.server.js può caricare dati condivisi da tutte le pagine sottostanti.

Accesso ai dati

La pagina riceve i dati uniti provenienti da tutti i layout antenati e dalla pagina stessa.

export let data;
// data has both layout and page properties

Ereditarietà nei componenti

Utilizzi $page.data per accedere ai dati uniti in qualsiasi punto dell'albero dei layout.

import { page } from "$app/stores";
<p>User: {$page.data.user?.name}</p>

Autenticazione al livello superiore

Carichi l'utente corrente nel layout radice; ogni pagina può accedervi tramite $page.data.

Evitare duplicazioni

Caricare i dati nel layout più alto tra quelli che ne hanno bisogno evita di ripetere il fetch in ogni pagina.

Dati solo lato server

Per i dati sensibili, li carichi in +layout.server.js, così non raggiungono mai il client, a meno che non vengano visualizzati.

Streaming

I caricamenti dei layout possono trasmettere Promise proprio come i caricamenti delle pagine.

Risoluzione dei conflitti

I dati della pagina sovrascrivono quelli del layout quando hanno la stessa chiave.

Ereditarietà in TypeScript

I tipi dei dati della pagina includono automaticamente i dati dei layout antenati tramite i tipi generati.

Invalidazione

Utilizzi invalidate per rieseguire su richiesta caricamenti specifici dei layout.

import { invalidate } from "$app/navigation";
invalidate("app:user");

Gerarchia

Consideri i layout come una gerarchia di dati: la radice per i dati globali, le sezioni per quelli specifici della sezione e le pagine per quelli specifici della pagina.

Verifica rapida

Come si accede ai dati del layout in una pagina?

Riepilogo

I caricamenti dei layout contribuiscono a un oggetto di dati unito, disponibile agli elementi discendenti tramite la prop data e $page.data.

Domande Frequenti

La lezione «Dati condivisi tra i layout» è gratuita?

Sì — il testo completo di «Dati condivisi tra i layout» è 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 «Dati condivisi tra i layout»?

Carichi i dati in un layout genitore e vi acceda nelle pagine e nei layout figli. 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 «Dati condivisi tra i layout»?

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. Gruppi di layout con (group)
  2. Layout a livello di route
  3. Uscire da un layout con +page@route
  4. Dati condivisi tra i layout
← Torna a Sveltejs Academy