logoalt Hacker News

yellowappleyesterday at 10:15 PM5 repliesview on HN

Thanks to that page letting me see how many dozens of lines of code React needs to do the equivalent of

    const element = document.createElement("h1");
    element.innerHTML = "Hello";
    element.setAttribute("title", "foo");
    const container = document.getElementById("root");
    container.appendChild(element);
I now have even less interest in ever touching a React codebase, and will henceforth consider the usage of React a code smell at best.

Replies

htnthrow11220yesterday at 10:25 PM

To be fair, if all you need is to add elements to a child you don’t need React.

Maybe nobody needs React, I’m not a fan. But a trivial stateless injection of DOM content is no argument at all.

Mogzolyesterday at 10:55 PM

The "magic" of React though is in its name, it's reactive. If all you're doing is creating static elements that don't need to react to changes in state then yeah, React is overkill. But when you have complex state and need all your elements to update as that state changes, then the benefits of React (or similar frameworks) become more apparent. Of course it's all still possible in vanilla JS, but it starts to become a mess of event handlers and DOM updates and the React equivalent starts to look a lot more appealing.

madeofpalkyesterday at 10:25 PM

All of that is the JavaScript equivalent of

    <h1 title=foo>Hello</h1>
I have even less interest in touching any of your codebases!
show 1 reply
llbbddyesterday at 11:28 PM

This code only works if run in a browser composed of millions of lines of C++.

fragmedeyesterday at 10:49 PM

Given the verbosity of Java's hello world vs Python's, you'd walk away with the conclusion that Java should never be used for anything, but that would be a mistake.

show 1 reply