logoalt Hacker News

halflifeyesterday at 8:59 PM2 repliesview on HN

Each one of these solves a different problem.

Promised - async

Observables - streams

Signals - reactivity


Replies

wartijn_yesterday at 10:50 PM

In theory that’s true (although observables are for reactivity too), but Angular uses observables for its http library and http requests are very much not streams. It’s one of the main downsides of working with Angular, the http library is mediocre and does come with the added overhead and complexity that rxjs brings.

Until this release (if you only use stable features) using forms meant dealing with observables too, even if you just want to read data when submitting a form and validating some data on change/blur.

And often you’ll find that your data from promises, observables and signals need to interact with each other, which can be annoying.

Fortunately the situation with signals and their async usage is improving, and iirc the Angular team wants to make rxjs optional, but until it is Angular can be a confusing mess on some points.

azangruyesterday at 10:39 PM

> Observables - streams

> Signals - reactivity

The r in rx stands for reactive.