Mit etwas mehr Erfahrung und Verständnis von Versprechungen und den monadischen Gesetzen, die ihre Verwendung regeln, hätten wir nicht so viel Zeit damit verbracht, am Refactor dieses Codes zu arbeiten.
In JavaScript kann asynchroner Code über Versprechen gehandhabt werden, die die Fortsetzungsmonaden von JavaScript sind. Das Wichtigste in diesem Fall, dass Versprechen eine Monade sind, ist, dass das folgende Gesetz zutrifft:
Diese magische Regel oben hat mir am Ende des Tages etwas Gedankenkraft erspart. Dies bedeutete, dass ich diese Fehler behandeln konnte, sobald sie innerhalb ihrer eigenen Funktionen auftraten, und mich von diesem langkettigen Wahnsinn fernhielt. Die Antwort war immer da und starrte mich an, ich konnte es einfach nicht sehen. Jetzt sehe ich, und es ist wunderschön.