React.render和reactDom.render的区别

Posted 余磊

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了React.render和reactDom.render的区别相关的知识,希望对你有一定的参考价值。

刚开始学习react.js。发现网上的资料,有些是写着react.render,有些写着reactDom.render.觉得很奇怪就查阅了一下资料。解释如下:

这个是react最新版api,也就是0.14版本做出的改变。主要是为了使React能在更多的不同环境下更快、更容易构建。于是把react分成了react和react-dom两个部分。这样就为web版的react和移动端的React Native共享组件铺平了道路。也就是说我们可以跨平台使用相同的react组件。

新的react包包含了React.createElement,.createClass,.Component,.PropTypes,.children以及其他元素和组件类。这些都是你需要构建组件时助手。 

而react-dom包包括ReactDOM.render,.unmountComponentAtNode和.findDOMNode。在 react-dom/server ,有ReactDOMServer.renderToString和.renderToStaticMarkup服务器端渲染支持。

总的来说,两者的区别就是:ReactDom是React的一部分。ReactDOM是React和DOM之间的粘合剂,一般用来定义单一的组件,或者结合ReactDOM.findDOMNode()来使用。更重要的是ReactDOM包已经允许开发者删除React包添加的非必要的代码,并将其移动到一个更合适的存储库。

以上是关于React.render和reactDom.render的区别的主要内容,如果未能解决你的问题,请参考以下文章

Intellij 2016.1.4 和 React render() 方法

[react] render在什么时候会被触发?

ReactDOM.render 与 React 组件渲染区别

React 系列四|React render VS 原生js渲染

React render return 空行问题

[React] Render Text Only Components in React 16