using-remote-functions
Bezpieczna komunikacja klient-serwer w komponentach SvelteKit bez pisania API
Instalacja
Wybierz klienta i sklonuj repozytorium do odpowiedniego katalogu skilli.
Instalacja
O skillu
Remote Functions to umiejętność dla SvelteKit, która pozwala tworzyć komponenty z typobezpieczną komunikacją między klientem a serwerem. Zamiast budować tradycyjne API, definiujesz funkcje po stronie serwera i wywołujesz je bezpośrednio z komponentów — z pełnym wsparciem TypeScript. Idealne do pobierania danych, obsługi formularzy i wykonywania poleceń serwera na poziomie komponentu, a nie strony. Wymaga włączenia flag eksperymentalnych w konfiguracji SvelteKit.
Jak używać
Otwórz plik
svelte.config.jsw projekcie SvelteKit i dodaj flagęremoteFunctions: truew sekcjikit.experimental. Opcjonalnie włączasync: truewcompilerOptions.experimental, aby móc używaćawaitbezpośrednio w komponentach.W swoim komponencie utwórz plik
data.remote.tsw tym samym katalogu. W pliku tym zdefiniuj funkcję zdalną — na przykład funkcjęquerydo pobierania danych lubformdo obsługi wysyłania formularza. Każda funkcja powinna być eksportowana i zawierać logikę serwera.W komponencie
.sveltezaimportuj funkcję zdalną i wywołaj ją jak zwykłą funkcję JavaScript. SvelteKit automatycznie obsługuje komunikację między klientem a serwerem — nie musisz pisać żadnych tras API.Dla formularzy użyj typu
formzamiastcommand— Remote Functions preferują deklaratywne podejście do mutacji danych. Formularz będzie działać nawet bez JavaScript dzięki progresywnej poprawie.Zorganizuj logikę tak, aby jak najmniej kodu było w pliku
+page.svelte, a jak najwięcej wdata.remote.ts. Strona powinna być czystym renderowaniem — mapowaniem typów na komponenty, podczas gdy serwer buduje ostateczne struktury danych.