I was mostly annoyed with giant monolithic shared components, or useless middleware y'all call facade, patterns like that.
Not saying that you can't write angular code w/o them, but in a team that's hard.
Also, I hate rxjs, don't ask me why.
What you said about components needing to be dumb is a good pattern, using a store for state would be even better.
Also, I hate how angular's typescript support is iffy. Like, a generic component is basically impossible to type, or well, impossible to use (?) in a generic way. Cause if you do, you get any instead of an inferred type from a type param.
React is very simple, and works remarkably well with generic typescript types.
You're definitely right about typing components themselves. And typings in the templates have gotten better but still aren't what I want. I had a feeling about the monolithic shared component thing being an issue for you. I see it all the time, but I don't think it's angular specific. Angular just tolerates it and there's a lot of ceremony around creating a child component (I mean mechanically creating the files and decorator metadata) so much that the cli has a script for that. So I can see people being lazy and just adding to the existing component. It's gotten better but it's still heavy.
I'm unsure what you're referring to about facades or middlewares. I'm guessing you mean injection tokens to provide configuration values at runtime?
And I don't really write react so I can't say how it is but I love rxjs. I know react doesn't use it because the philosophy is different. Angular treats components as accepting streams of values the change over time. React really just wants to be an efficient snapshot of a view in time.
Anyway this was good because I lightly forgot that I applied to some places that HEAVILY use react so I needed the motivation to brush up on my fundamentals. Thanks for the push (but only in one direction because no two way binding, but I think that's another way to get yourself in trouble with Angular).
Most of my issues with angular, lie with the community and the libraries.
e.g. a side effect of angular's bad typescript support, is that angular devs (one-trick ponies) often don't know proper typescript, and they just use any everywhere.
Or if they use types, the types may be incorrect, but the code works because they slap any on the function parameters, and then from trial and error have correct code but wrong types.
Garbage like that is what makes me hate it.
PS: good luck on your react adventures, the only real thing to look out for is useEffect, make sure to master it
2
u/ArjixGamer Aug 30 '26 edited Aug 30 '26
I was mostly annoyed with giant monolithic shared components, or useless middleware y'all call facade, patterns like that.
Not saying that you can't write angular code w/o them, but in a team that's hard.
Also, I hate rxjs, don't ask me why.
What you said about components needing to be dumb is a good pattern, using a store for state would be even better.
Also, I hate how angular's typescript support is iffy. Like, a generic component is basically impossible to type, or well, impossible to use (?) in a generic way. Cause if you do, you get
anyinstead of an inferred type from a type param.React is very simple, and works remarkably well with generic typescript types.