 
        
      React API
2017, Sep 12    
      react是什么
- React是Facrbook内部的一个JavaScript类库,它引入了一种新的方式来处理浏览器DOM。
- React为了尽可能减少对DOM的操作,提供了Virtual DOM(就是React抽象出来的一个对象,描述dom应该什么样子的,应该如何呈现。)去更新真实的DOM。
- 为什么通过这多一层的Virtual DOM操作就能更快呢?React有个diff算法,然后利用这个diff算法,通过当前新的dom表述与之前的作比较,计算出最小的步骤更新真实的DOM。
- React本质上只关心两件事:1.更新DOM;2.响应事件。
react 和 react-dom
React 0.14 发布,拆分为 react 和 react-dom。 原本在服务端渲染用的两个 API .renderToString 和 .renderToStaticMarkup 被放在了react-dom/server 中。
react
最熟悉的用法~
import React from 'react';
class LineTrend extends React.Component {
}
API:
- React.Component
- React.PureComponent
- React.createElement
- React.createFactory
- React.cloneElement
- React.isValideElement
- React.children
- 
    React.fragment 都是常用简单的用法,在此不多讲述。 
react-dom
import ReactDOM from 'react-dom';
const render = Component => {
  // ReactDOM.render(
  //   <Provider store={store}>
  //     <Component />
  //   </Provider>,
  //   document.getElementById('root')
  // );
};
render(App);
API:
- ReactDOM.render()
- ReactDOM.hydrate()
- ReactDOM.unmountComponentAtNode()
- ReactDOM.findDOMNode()
- ReactDOM.createPortal()
1) ReactDOM.render()
ReactDOM.render是React的最基本方法用于将模板转为HTML语言,并插入指定的DOM节点。
2) ReactDOM.findDomNode
用来得到实际Dom.因为react组件有个特点,它有自定义组件,比如
3) ReactDOM.unmountComponentAtNode
移除一个已经初始化DOM过的React组件,清理它的操作和状态。如果这个组件中没有初始化过的组件,这个方法没有任何作用~