gpui-global
Zarządzaj stanem aplikacji globalnie w GPUI — dostęp z każdego kontekstu
Instalacja
Wybierz klienta i sklonuj repozytorium do odpowiedniego katalogu skilli.
Instalacja
O skillu
Skill do zarządzania stanem globalnym w GPUI. Implementuj konfigurację aplikacji, ustawienia dostępne dla całej aplikacji i zasoby współdzielone między komponentami. Definiuj typy implementujące trait Global, a następnie ustawiaj je w kontekście aplikacji i odczytuj z dowolnego miejsca w kodzie. Idealny do przechowywania motywu, języka, flag funkcji lub parametrów połączenia API.
Jak używać
Zainstaluj skill w swoim projekcie GPUI, dodając go do katalogu
.claude/skills/lub importując z repozytorium longbridge.Zdefiniuj strukturę stanu globalnego, na przykład
AppSettingslubAppConfig, i dodaj do niej implementację traituGlobal— struktura musi być klonowalna (pochodnaClone).W funkcji
mainlub podczas inicjalizacji aplikacji ustaw globalny stan za pomocącx.set_global(), przekazując instancję swojej struktury — na przykładcx.set_global(AppSettings { theme: Theme::Dark, language: "en".to_string() }).Odczytaj stan globalny z dowolnego komponentu lub kontekstu za pomocą
cx.global::<AppSettings>()— zwraca referencję do przechowywanych danych.Aby zmienić stan globalny, użyj
cx.update_global::<AppSettings, _>(|settings, cx| { settings.theme = new_theme; })wewnątrz metody komponentu — pamiętaj, że aktualizacje globalne nie wyzwalają automatycznie powiadomień, więc ręcznie wywołajcx.notify()na komponentach, które powinny się przerenderować.Zastosuj skill do typowych scenariuszy: konfiguracja API (endpoint, timeout, liczba prób), flagi funkcji (włączanie/wyłączanie funkcji beta) lub ustawienia użytkownika (motyw, język, preferencje).