$derived.by for komplekse avledninger
Beregn avledede verdier med vilkårlig logikk ved hjelp av callback-formen til $derived.
$derived.by for komplekse avledninger er en gratis leksjon i Sveltejs Academy på CoddyKit. Dette er leksjon 2 av 4. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Sveltejs Academy, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Sveltejs Academy inneholder totalt 4 leksjoner.
Avledninger med flere uttrykk
For avledede verdier som trenger mer enn ett uttrykk, bruker du callback-formen.
let result = $derived.by(() => {
if (count > 10) return "high";
if (count > 5) return "medium";
return "low";
});Samme reaktivitet
Callback-en sporer avhengigheter på samme måte som en $derived med ett uttrykk.
Bedre lesbarhet
For kompleks logikk er .by-formen tydeligere enn å pakke alt inn i ett uttrykk.
Løkker og grener
Du kan bruke for-løkker, if-else og let inne i callback-en.
Rene funksjoner
På samme måte som $derived må .by være ren. Bivirkninger er ikke tillatt.
Memoisering
Resultatet bufres til avhengighetene endres.
Unngå tungt arbeid
Hvis beregningen er kostbar, bør du vurdere å bruke caching utenfor avledningen.
Typet utledning
TypeScript utleder returtypen fra callback-en.
Kombiner med $effect
Bruk $derived.by for beregnede verdier og $effect for bivirkninger. Hold dem adskilt.
Migrering
Konverter nestede $:-blokker til én $derived.by for ryddigere kode.
Praktiske eksempler
Nyttig for filtrering og sortering av lister, beregning av samlede nøkkeltall og betinget formatering.
Kort kontroll
Når bruker du $derived.by?
Oppsummering
Bruk $derived.by(() => ...) for beregnede verdier i flere trinn, med grener eller løkker.
Lær deg HTML med en AI-veileder – gratis
Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.
- Kurs
- 41
- Leksjoner
- 163
Ofte stilte spørsmål
Er leksjonen «$derived.by for komplekse avledninger» gratis?
Ja – hele teksten i «$derived.by for komplekse avledninger» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av Sveltejs Academy-kurset, kan du oppgradere til CoddyKit PRO. Kurset i Sveltejs Academy inneholder totalt 4 leksjoner.
Hva lærer jeg i «$derived.by for komplekse avledninger»?
Beregn avledede verdier med vilkårlig logikk ved hjelp av callback-formen til $derived. Du øver på Sveltejs Academy med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.
Trenger jeg erfaring for å begynne med Sveltejs Academy?
Ingen tidligere erfaring er nødvendig. Sveltejs Academy på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 2 av 4.
Hvor lang tid tar leksjonen «$derived.by for komplekse avledninger»?
De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.
Kan jeg skrive og kjøre kode i denne Sveltejs Academy-leksjonen?
Ja. Alle Sveltejs Academy-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.
Alle leksjonene i dette kurset
- $state.raw for ikke-reaktiv tilstand
- $derived.by for komplekse avledninger
- $effect.root for manuell opprydding
- Migrering fra Svelte 4 til 5