Hallo dedlfix,
Ich verwende nur das was in Angular drin ist, also RxJS. Und vielleicht weißt du bereits das, was ich an allgemeinen Dingen sagen kann. In Angular werden neben Netzwerkfehlern auch die Status 4xx und 5xx zu Fehlern umgeschrieben und landen im catch. Das ist wohl aber nicht überall üblich, beziehungsweise einige vertreten die Ansicht, dass es kein HTTP-Fehler ist, wenn die Anwendung nicht kann. Fehler haben dann als 200 zurückzugehen und müssen auf Anwendungsebene behandelt werden, durch Unterscheidung, ob ein Error-Objekt oder ein Datenobjekt in der Antwort steckt.
Hm. Das heisst, du leitest Fehler an die Components weiter? In meinem Beispiel würde also createFooFailure()
die Fehlermeldungen in den Store packen und die Komponente würde darauf reagieren?
Wie gehst du dann mit dem Erfolgsfall um? Ich bekomme das Response-Objekt ja nie zu sehen in der Komponente, das Redux-Thunk-Promise gibt mir das nicht weiter. Wobei… jetzt hast du mich unsicher gemacht, ich überprüfe das nochmal 😉
Ich könnte natürlich auch statt mit dem Redux-Thunk-Promise in der Komponente zu arbeiten mit den Store-Properties arbeiten und z.B. ein Flag success
setzen. Wenn das wahr ist, wird die Weiterleitung ausgelöst.
Je mehr ich darüber nachdenke, desto mehr glaube ich, dass es sinnvoller ist, die Business-Logik in die Actions auszulagern… grübel
LG,
CK