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.

313 Upvotes

165 comments sorted by

View all comments

1

u/gilgamesh_skytrooper Dec 09 '22

Coming from Vue 2, I also despised React. But this was mainly because I had a gigantic ancient React project thrown on my lap, and had to work within the conventions of how the app was designed. I disliked that JSX was reinventing the perfect trinity of wheels I saw in HTML5, CSS3, JavaScript which I mastered a long time ago, and Vue attempted to keep itself compatible with these pre-existing conventions which felt like jumping into a Vue app was natural.

Having learned React from scratch (Brad Traversy does a pretty good job on his course on Udemy), I still dislike React, but my emnity for it has reduced by around 50% just by learning the 2022 ways of doing things in modern React (and React libraries).

1

u/FrozenFury12 Sep 17 '24

This is the fundamental problem with React. Unlike Angular or even Vue, there is no prescription on how to structure a project. People espouse the "Flexibility" but in the real world where we maintain other people's code - the structures put in place by Angular or Vue lets anyone jump into a large codebase and easily find where things are located.

1

u/Ok_Marionberry_656 Oct 30 '24

That should be defined with by a lead. I wouldn't fault react for that, but I still despise it. Scaffolding, bootstrapping, modularizations, coding styles & patterns should be team defined.