Runa `$state.snapshot()` este utilizată în Svelte 5 pentru a extrage o clonă profundă (deep clone) statică, ne-reactivă, a unui obiect sau tablou gestionat prin `$state()`. Aceasta decuplează proxy-urile reactive interne Svelte, returnând o structură nativă JavaScript curată, gata de serializare JSON, salvare în `localStorage` sau transmitere prin `fetch()`.
Decuplare Proxy și Clonare Curată pentru Serializare
Previne apariția efectelor secundare atunci când obiecte reactive sunt mutate de biblioteci externe terțe sau inspectate prin `console.log()`.
<script>
let userProfile = $state({
name: "Alex",
preferences: { theme: "dark", notifications: true }
});
async function saveToServer() {
// Obține o copie curată, fără proxy reactiv:
const rawData = $state.snapshot(userProfile);
await fetch('/api/user', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify(rawData)
});
}
</script>
Implementarea acestei tehnologii în aplicațiile Svelte și SvelteKit asigură o reactivitate predictibilă, performanțe de randare maxime și o experiență interactivă impecabilă.
Întrebări & Exemple de Cod:
$state.snapshot în Svelte 5: obținerea unei copii statice pure a stării reactiveAi o nelămurire despre utilizarea comenzii
$state.snapshot în Svelte 5: obținerea unei copii statice pure a stării reactivesau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!
Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.