gpui-global
Global state management in GPUI. Use when implementing global state, app-wide configuration, or shared resources.
Installation
Pick a client and clone the repository into its skills directory.
Installation
About this skill
Global state management in GPUI. Use when implementing global state, app-wide configuration, or shared resources.
How to use
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).