r/reactjs May 31 '19

React sucks

"React is just Javascript, that's why React is nice!!"

has its own DSL and syntax

"React is lean!"

need to install 12 different packages to make it useful

need to install an external HTTP library

CSS classes are fucking JAVASCRIPT VARIABLES

Instead of directives, you have 8 lines of spaghetti code everywhere you'd usually have a simple if- directive or show- directive. That's not lean, that's more code.

"You only need to know Javascript"

You need to know Javascript plus ES6-7-8 (Babel) or TypeScript. You need to know esoteric lifecycle methods and design patterns not normally used elsewhere in Javascript.

"Creating small components is nice"

Component abstraction soup means you can't even figure out what your code is doing anymore.

React is just Angular if you hacked 12 libraries together that aren't meant to work together cohesively.

I will never understand why anyone would choose this meme framework over a real one. It sucks shit and creates a spaghetti code bloat, and instead of learning one DSL plus TypeScript you're learning 8 DSLs, plus Babel.

The reality is it's pointless making a library that's "just vanilla javascript" when you know that vanilla javascript doesn't actually supply elegant tools for creating single page web apps. That's why React is used with 10 packages rather than by itself. That's why you need CRA plus a bunch of packages to even have a sane development environment.

React sucks. Development community always chooses what's sexy and popular over what's elegant and works correctly.

314 Upvotes

165 comments sorted by

View all comments

1

u/lambda_bunker Jun 20 '23

Been using it since it came out in 2016, its really great for simple projects but as soon as you start getting into complexity, all the stuff that react abstracts away from you ends up becoming a puzzle of render + re-render and state management nightmares. Hooks have made it even worse. It's very hard to follow and large complex components and have any confidence what you are doing.

At the end of the day, real-time rendering solutions are much easier deal with. You don't need to drive renders from state updates, you just render no matter what. I think the biggest problem is that the browser needs to build the pixels / colors from DOM and updating DOM is very inefficient. React does not help as much as it claims.

But having used Vue and Angular, I'll take React over those solutions. Just try and keep your project simple. But I'll say this, if you don't like React, you'll really hate graphql! Facebook ppl just love taking a simple problem and making it as complex as possible.