Jak uniknąć stanu „ładowanie i sukces jednocześnie”?
Najpierw odpowiedz na głos lub w myślach, potem porównaj.
Odpowiedź
Zamiast kilku niezależnych flag opisuję dozwolone warianty. Wynik jest na przykład w stanie loading, success z danymi albo error z komunikatem. W TypeScript można przedstawić to jako union z polem status. Po sprawdzeniu statusu wiem, jakie pola wolno odczytać.
To usuwa część bezsensownych kombinacji i ułatwia czytanie UI. Nie gwarantuje jednak, że program przechodzi między stanami prawidłowo. Gdy dwa serwery aktualizują ten sam zapis, typy nie zastąpią ochrony w bazie. Przy długim zadaniu warto jawnie dodać także „anulowane” i „czeka na zgodę”, zamiast ukrywać je w kolejnych flagach.
Dlaczego to ważne: Łączy codzienny TypeScript z kontrolą pracy agenta.
Możliwe dopytania: Co zrobić, gdy dodajemy nowy stan i trzeba obsłużyć go wszędzie?
Jak poszło? Bądź szczery — „Jeszcze nie” dodaje pytanie do powtórki.
Zacznij od
- B-P01 · Czym jest Node.js i czym różni się od JavaScriptu w przeglądarce? — JavaScript, TypeScript i Node.js
- B-P04 · Co to jest Promise? — JavaScript, TypeScript i Node.js
- B-P10 · Co daje TypeScript i czego nie daje? — JavaScript, TypeScript i Node.js
Dalsza lektura
- TypeScript Handbook: Narrowing(otwiera się w nowej karcie)Docs; dostęp 22.10.2026. Zawężanie, discriminated unions i exhaustiveness.