This is to avoid an object actually inheriting a class, since JSX is compiled down to Javascript, and providing a
class
property in an object can lead to some issues
https://jsfiddle.net/gianlucaguarini/s73vo4jy/ nothing else to add
React is basically an engine that can get a set of differences in the Virtual DOM, which is plain objects. ReactDOM is a renderer that renders these objects to the DOM. Splitting it up like this allows for the objects used by React to render to different things, such as native applications. (React Native).
Never heard about library bundles? There is no technical need for two includes It’s just a poor design solution
I’m not sure if you understand how JSX works, but it is compiled to calls to
React.createElement
, and calling it with multiple objects is simply invalid Javascript. For example:
I understood it good that’s the reason I didn’t like it but apparently things will get better in React@16
If you actually read that article, you’ll notice that it is backwards compatible, meaning there will be no changes required for you app, unless you were using some anti-pattern.
They are just rewriting the rendering engine to reuse work and become faster.
Ok I will let you believe that we will discuss about it once it will be released