0Pricing
Sveltejs Academy · Lekcja

Niestandardowy wzorzec store’a z subscribe/set/update

Zbuduj store z hermetyzowaną logiką, udostępniając metodę subscribe i niestandardowe akcje.

Niestandardowy wzorzec store’a z subscribe/set/update to bezpłatna lekcja Sveltejs Academy na CoddyKit. To lekcja 2 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Sveltejs Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Sveltejs Academy zawiera 4 lekcji w sumie.

Kontrakt store'a

Każdy obiekt z metodą subscribe(fn), która zwraca funkcję anulującą subskrypcję, jest prawidłowym store'em Svelte.

Opakowanie writable

Niestandardowy store można zbudować, opakowując writable i udostępniając wyspecjalizowane API.

function createCounter() {
  const { subscribe, set, update } = writable(0);
  return {
    subscribe,
    increment: () => update(n => n + 1),
    reset: () => set(0)
  };
}

Używanie

Należy wyeksportować instancję i korzystać z niej jak z dowolnego store'a.

export const counter = createCounter();

Użycie w komponencie

Należy odczytywać wartość za pomocą $counter, a metody domenowe wywoływać tak jak counter.increment().

Hermetyzacja logiki

Logika wewnętrzna pozostaje prywatna — udostępniane są tylko wybrane metody.

Lepsze niż zmienne globalne

Niestandardowe store'y można testować i zastępować, w przeciwieństwie do rozproszonych globalnych modyfikacji.

Metody asynchroniczne

Metody mogą być asynchroniczne i wywoływać set, gdy będą gotowe.

load: async () => set(await fetch("/api").then(r => r.json()))

Bezpieczne typowanie

W TypeScript należy określić typ kształtu zwracanej wartości, aby zapewnić konsumentom pełne podpowiedzi IntelliSense.

Łączenie ze store'ami

Niestandardowy store może wewnętrznie zależeć od innych store'ów, aby tworzyć stan wyprowadzony.

Singleton a fabryka

Należy zdecydować, czy potrzebna jest jedna współdzielona instancja, czy fabryka tworząca wiele instancji.

Schemat z praktyki

Można używać tego schematu do obsługi koszyka, uwierzytelniania, motywu i innych elementów domeny w aplikacji.

Szybkie sprawdzenie

Co sprawia, że obiekt jest prawidłowym store'em Svelte?

Podsumowanie schematu

Niestandardowe store'y opakowują writable i udostępniają metody właściwe dla danej domeny, zachowując hermetyzację logiki wewnętrznej.

Często zadawane pytania

Czy lekcja „Niestandardowy wzorzec store’a z subscribe/set/update” jest bezpłatna?

Tak — pełny tekst „Niestandardowy wzorzec store’a z subscribe/set/update” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Sveltejs Academy, przejdź na CoddyKit PRO. Kurs Sveltejs Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Niestandardowy wzorzec store’a z subscribe/set/update”?

Zbuduj store z hermetyzowaną logiką, udostępniając metodę subscribe i niestandardowe akcje. Ćwiczysz Sveltejs Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Sveltejs Academy?

Nie wymagamy żadnego doświadczenia. Sveltejs Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 4.

Ile czasu zajmuje lekcja „Niestandardowy wzorzec store’a z subscribe/set/update”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Sveltejs Academy?

Tak. Każda lekcja Sveltejs Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. derived() dla store’ów obliczanych
  2. Niestandardowy wzorzec store’a z subscribe/set/update
  3. Readable z Writable
  4. Kontrakty store’ów i interoperacyjność
← Powrót do Sveltejs Academy