Im Wesentlichen, was der Titel sagt, gibt es einen Grund, eine Beobachtung über ein Versprechen
Es gibt einen großen Vorteil von Observablen, der hier sehr relevant ist.
Observable
unterstützt die Stornierung, Promise
nicht.
Die Verwendung von subscribe()
und map()
anstelle von then()
scheint mir keine große Komplikation hinzuzufügen.
Sie können auch toPromise()
verwenden, um Promise
zu erhalten, wenn Sie das brauchen.
Siehe auch Angular - Promise vs Observable für weitere Details.
Auch wenn der FRP-Stil der Programmierung verwendet wird, ist es praktisch, überall eine Observable zu erhalten. Wenn das nicht gewünscht ist, gibt nur toPromise()
eine Promise
und die etwas einfachere API.
Der grundlegende Unterschied zwischen Versprechen und Observable ist, dass das Observable-Modul nicht funktionieren wird, wenn es keine Funktionalität abonniert hat. Daher weniger Belastung für Ihren Server.
Wo als Versprechen, ob Sie wirklich die Antwort verwenden oder nicht, wird es Ihnen ein Versprechen-Objekt senden, nachdem Sie Ihren Server mit Ihrer Anfrage und Nutzlast pingen; Was manchmal unerwünscht ist.
Der Grund ist, die Belastung von Knoten oder anderen Servern zu verringern.
Tags und Links http angular promise observable