I appreciate the more thoughtful response than your previous comment. You make many valid points. I’ll add some clarifications below.
But when you start mixing AngularJS with Angular in your post it gets confusing. Angular (the “new”) has not much in common with AngularJS and it seems you tried the framework by applying the same patterns you used in AngularJS — and of course it wasn’t great.
I’ve received this criticism on the article before, so let me clarify my intent:
We chose not to go down the Angular route because we found it to be doubling down on it being an opinionated framework. Certainly not entirely the same opinions, but it is extremely rigid in comparison. This is fine for smaller applications, but the more complex a use case or design gets, the more in the way these opinions can become.
This lends itself to your next point, which is Angular is more than just a view rendering library, to which I agree. It’s a fair point to say it’s more difficult to compare React to Angular 1 to 1. When I say “React” in the article, I’m really meaning “React & Gang,” in retrospect. The flexibility that piecemealing a framework is what we like about the React ecosystem over Angular.
I’m not sure why you dislike Typescript
This, again, is a misinterpretation of my post. I specifically state that my issue with Angular is not that it’s Typescript, but instead that I’m forced to choose Typescript as my language. My original presentation to our client was including Typescript with React to garner the benefits of a typed language, but that was deemed an unnecessary expense as they do not have a pool of TS developers.
Your love for JSX — I don’t get it but to each his own
Love is a bit of an exaggeration. I share your thoughts on HTML being in the component file is not the most ideal in the sense of you’re combining your view and controller. What I do like about it, though, is that you’re writing JS to generate your DOM instead of having Angular’s JS generate it for you. Here’s a direct quote:
Again, thank you for taking the time to respond and expand upon your thoughts.
— Rookie who doesn’t know what he’s talking about, and is sad about it.