Hacker News new | ask | show | jobs
by tengbretson 3499 days ago
I guess I fail to see the value of this. If you don't want the component lifecycle, event system, or DOM diffing that React gives you, you might as well just write your own declarative wrapper around `document.createElement(...)` and be done with it. You can achieve this for templating alone in < 10 lines of code, and if you want to add some event delegating on top of it you can include that for another ~30.
1 comments

Right - DOM diffing is the key selling point of React. But the fine-grained screen updates possible via DOM diffing is not super important for most applications.

Event system is already supported by DOM. React doesn't add anything there. Component lifecycle is also not compelling.

That's kind of what I'm saying. If you don't value those things, why introduce a library at all? What you're describing can be implemented in < 10 lines.
More like 200 lines, so it is useful to have a library. BTW it is rare to hear component lifecycle and event system described as key selling points of React. Most people would say DOM diffing and perf are the key selling points.
The point of React is to make it practical to structure view logic as a function (projection) of the application state. Virtual DOM is just an implementation detail.
By the way, for the most minimal diffing implementation see https://github.com/patrick-steele-idem/morphdom.
I lied. More like 5 lines. http://codepen.io/anon/pen/MbjLMB