State Management · Senior · Frage 73 von 75

Warum modelliert man asynchronen State als Discriminated Union statt als getrennte Felder?

type State =
  | { status: "idle" }
  | { status: "loading" }
  | { status: "success"; data: User[] }
  | { status: "error"; error: string };
Antwort zeigen

Richtige Antwort: Unmögliche Kombinationen sind nicht darstellbar

Erklärung

Bibliotheken wie TanStack Query zeigen dieselbe Idee über status. In eigenen Reducern entfallen dadurch defensive Prüfungen in der ganzen UI.

Zum Weiterlesen

Fehler in der Frage

State Management · Senior · Frage 73

Teste dich selbst

Mach den Test State Management · Senior: Fragen und Antworten werden gemischt, und am Ende wartet eine Übersicht der Fehler.

Diesen Test machen