react和reactdom的区别是:reactdom只做和浏览器或dom相关的操作,例如“reactdom.finddomnode()”操作;而react负责除浏览器和dom以外的相关操作,reactdom是react的一部分。
本教程操作环境:windows10系统、react17.0.1版、dell g3电脑。
react和reactdom有什么区别reactdom 只做和浏览器或dom相关的操作,例如:reactdom.render() 和 reactdom.finddomnode()。如果是服务器端渲染,可以 reactdom.rendertostring()。react 不仅能通过 reactdom 和web页面打交道,还能用在服务器端ssr,移动端reactnative和桌面端electron。
react 在v0.14之前是没有 reactdom 的,所有功能都包含在 react 里。从v0.14(2015-10)开始,react 才被拆分成react 和 reactdom。为什么要把 react 和 reactdom 分开呢?因为有了 reactnative。react 只包含了 web 和 mobile 通用的核心部分,负责 dom 操作的分到 reactdom 中,负责 mobile 的包含在 reactnative 中。
reactdom是react的一部分。reactdom是react和dom之间的粘合剂,一般用来定义单一的组件,或者结合reactdom.finddomnode()来使用。更重要的是reactdom包已经允许开发者删除react包添加的非必要的代码,并将其移动到一个更合适的存储库。
e.g:
web端react代码
import react from 'react';import reactdom from 'react-dom';const app = () => ( <div> <h1>hello react</h1> </div> )reactdom.render(<app/>, document.getelementbyid('root'));
移动端的reactnative代码:
import react from 'react';import {text, view} from 'react-native';const welcomescreen = () => ( <view> <text>hello reactnative</text> </view> );
相同的是都需要import react from 'react'。
而web应用需要import reactdom from 'react-dom';
mobile应用需要import {text, view} from 'react-native'
推荐学习:《react视频教程》
以上就是react和reactdom有什么区别的详细内容。