Observables vs Promises
Both Promises
and Observables
provide us with abstractions that help us deal with the asynchronous nature of our applications. However, there are important differences between the two:
As seen in the example above,
Observables
can define both the setup and teardown aspects of asynchronous behavior.Observables
are cancellable.Moreover,
Observables
can be retried using one of the retry operators provided by the API, such asretry
andretryWhen
. On the other hand,Promises
require the caller to have access to the original function that returned the promise in order to have a retry capability.