Server rendered html page -> load javascript file -> javascript manipulates the dom
- slow
- html is highly coupled with the js, and js mutating the dom
- hard to test
First popular single page frontend MVC framework, which enabled the rapid development in frontend.
- code starts to be a bit organized
- testing is better
- still manipulates dom
Also popular framework, handles two way binding for you.
- virtual dom frees developers from manipulating the DOM
- testing is better
- application is easier to reason about
React.createElement
ReactDom.reander