fix: Uebertrag buchen tat sichtbar nichts – useToast falsch ausgepackt

useToast() liefert die Melde-Funktion selbst, kein Objekt. In drei Dateien aus
dieser Sitzung stand "const { toast } = useToast()", also undefined. Der Aufruf
steht fast immer in einem catch – dort verschluckt der TypeError die
eigentliche Meldung, und nach aussen passiert gar nichts.

Das erklaert beide Beschwerden:

- "Als Uebertrag buchen" schien wirkungslos: Die Buchung lief durch, dann warf
  toast(), der catch warf beim Melden erneut, der Dialog blieb offen.
- "Braucht ein Reload": Im Eingang stand toast() VOR laden() – der Dialog
  schloss noch, das Neuladen kam nie. Die Cache-Kopfzeile, die ich dafuer
  gesetzt habe, war nicht die Ursache; richtig ist sie trotzdem.

Am Ende in der laufenden Oberflaeche nachgeklickt: Dialog schliesst, Meldung
erscheint, die Zeile wird ohne Neuladen zum Uebertrag, die Gegenseite liegt auf
dem Zielkonto, beide Salden stimmen.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Guido
2026-08-27 11:15:43 +02:00
co-authored by Claude Opus 5
parent 64b32cf8b8
commit 8cb82da63c
4 changed files with 7 additions and 3 deletions
+4
View File
@@ -64,6 +64,10 @@ export function ToastProvider({ children }) {
);
}
// Liefert die Melde-Funktion SELBST, nicht ein Objekt mit ihr darin.
// `const { toast } = useToast()` ergibt undefined – und weil der Aufruf fast
// immer in einem catch steht, verschluckt der TypeError dort die eigentliche
// Meldung und es passiert sichtbar gar nichts.
export function useToast() {
return useContext(ToastContext);
}