React 与 ReactDOM?

2024-01-17

我有点新的反应。我发现我们必须导入两件事才能开始,React and ReactDOM,任何人都可以解释其中的区别。我正在阅读反应文档 https://reactjs.org/docs,但它没有说。


React 和 ReactDOM 最近才被分成两个不同的库。在 v0.14 之前,所有 ReactDOM 功能都是 React 的一部分。这可能会造成混乱,因为任何稍微过时的文档都不会提及 React / ReactDOM 的区别。

顾名思义,ReactDOM 是 React 和 DOM 之间的粘合剂。通常,您只会将它用于一件事:安装ReactDOM.render()。 ReactDOM 的另一个有用的功能是ReactDOM.findDOMNode()您可以使用它来直接访问 DOM 元素。 (你应该在 React 应用程序中谨慎使用它,但这可能是必要的。)如果你的应用程序是“同构”的,你也可以使用ReactDOM.renderToString()在你的后端代码中。

对于其他一切,还有 React。您可以使用 React 来定义和创建元素、生命周期挂钩等,即 React 应用程序的核心。

React 和 ReactDOM 被分成两个库的原因是由于 React Native 的到来。 React 包含网络和移动应用程序中使用的功能。 ReactDOM 功能仅在 Web 应用程序中使用。 [UPDATE:经过进一步的研究,很明显我对 React Native 的无知。目前,拥有 Web 和移动设备通用的 React 包似乎更多是一种愿望,而不是现实。 React Native 目前是一个完全不同的包。]

请参阅宣布 v0.14 版本发布的博客文章:https://facebook.github.io/react/blog/2015/10/07/react-v0.14.html https://facebook.github.io/react/blog/2015/10/07/react-v0.14.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

React 与 ReactDOM? 的相关文章

随机推荐

  • 如何调试使用 boost 的代码而不失去理智?

    Boost 是一组很棒的库 它确实boosts生产率 但是调试使用它的代码完全是一场噩梦 当然 逐步浏览两万个头文件可能是一项有价值的智力练习 但如果您需要一遍又一遍地这样做怎么办 是否有一种对开发人员友好的方法来跳过升压部分并让调试器直接
  • 为什么 ml_create_dummy_variables 在 Sparklyr 中不显示新的虚拟变量列

    我正在尝试在 Sparklyr 中创建模型矩阵 有一个功能ml create dummy variables 用于一次为一个分类变量创建虚拟变量 据我所知 没有 model matrix 等效于一步创建模型矩阵 很容易使用ml create
  • 添加/删除 UIBarButtonItem 的 EventHandler

    人们可以定义一个EventHandler在构造函数中 UIBarButtonItem logoutButton new UIBarButtonItem UIBarButtonSystemItem Stop logoutButtonEvent
  • PhantomJS .click() 不起作用

    此代码不起作用 var page require webpage create page open http www ebay com function console log Page loaded page includeJs http
  • Web Speech API 中语法的效果

    在 Web Speech API 的示例中 始终指定语法 例如 在MDN 的颜色变化示例 https github com mdn web speech api blob master speech color changer script
  • 如何使 python 单元测试在从不同工作目录运行时始终找到测试数据文件?

    这是一个关于测试环境设置的问题 在我的项目中 我有一些访问测试数据文件的单元测试 这些单元测试可以通过测试运行器从我的项目目录运行 或者 我可以单独运行每个测试文件 模块 例如出于调试目的 问题是 根据我运行测试的位置 当前目录是不同的 因
  • Ember:处理组件中来自 ember-network Promise 的 JSON 响应

    我正在尝试在组件中实现一个简单的自动建议 我正在测试 fastboot 因此使用 ember network 与我的 API 进行通信 我现在没有使用 ember data 这是否是 余烬 方式是一个不同的问题 我只是想让它发挥作用 我的组
  • Twilio Video API 的房间内的参与者数量有限制吗?

    Twilio Video API 中的团体类型房间的参与者数量有限制吗 文档中指定了对等类型的限制 但没有提及团体类型房间 UPDATE Twilio 在其博客文章中提到每个房间最多可容纳 50 名参与者 看起来是一个非常小的数字 还是一样
  • 不带参数的 Spring Integration Gateway

    在我的网关上 我有一个方法 Gateway String commsTest 我的想法是 我可以从 bean 调用 commsTest 并使用 spring 集成将其连接到将检查通信的服务激活器 当我这样做时 我会得到一个receive i
  • .Net 中的模拟弹性搜索响应

    我有 Elastic Search Nest 库代码 需要模拟我从弹性搜索索引获得的响应 var obj service Search
  • font-size 为 62.5% 的 html 和 em 计算

    我有点困惑 希望有人能解释这种行为 我有以下代码
  • Google Play 登录 Unity

    我正在尝试集成 Google play 服务 以便我可以在游戏中获得成就和排行榜 我尝试了以下代码 public Text myText void Awake PlayGamesPlatform Activate public void S
  • 将自定义属性添加到 app.config 中的自定义提供程序配置部分

    我正在关注这篇精彩的文章 in NET 基本上 本文详细解释了如何最终得到如下所示的配置文件
  • 将 Swift 字典转换为字符串

    为了测试和调试 我尝试将字典的内容放入字符串中 但不知道它将如何实现 是否可以 如果是 如何 字典是从网络服务获取的 所以我不知道它的键值 我想使用应用程序中的数据 在 Objective C 中 足以在 NSString 中存储任何内容
  • 如何在不使用 API 的情况下以编程方式执行搜索?

    我想创建一个程序 将字符串输入到 Google 等网站的文本框中 不使用其公共 API 然后提交表单并获取结果 这可能吗 我认为抓取结果需要使用 HTML 抓取 但是如何在文本字段中输入数据并提交表单呢 我会被迫使用公共 API 吗 难道这
  • NPM 错误!当我运行创建反应应用程序时代码完整性

    我尝试启动一个新的反应项目 但不断收到此错误 npm ERR code EINTEGRITY npm ERR errno EINTEGRITY npm ERR Invalid response body while trying to fe
  • 如何在 Android 中从 Drawable 将图像附加到彩信?

    我想将资源 可绘制文件夹中的图像附加到彩信 是否可以将可绘制文件夹中的图像附加到彩信 如果是 请在此处提供一些代码 我尝试了很多 也在这里找到了很多 以及在谷歌上但仍然无法获得正确的解决方案 请有人帮助我解决这个问题 提前致谢 我的代码如下
  • 检查R中的值是否==整数(0)[重复]

    这个问题在这里已经有答案了 我正在使用grepR 中的函数检查是否满足条件正则表达式 我所拥有的是这样的 grep expression string 一个例子可能是 value grep s A z value 哪个输出 整数 0 我想要
  • 具有绝对导入的 Rollup 和 Typescript 类型声明

    我正在制作 React 组件库 项目结构是这样的 src components utils hooks 现在我尝试使用汇总生成类型 d ts 文件 类型是生成的 但例如我的组件NumberInput正在使用绝对导入Input像这样的组件 i
  • React 与 ReactDOM?

    我有点新的反应 我发现我们必须导入两件事才能开始 React and ReactDOM 任何人都可以解释其中的区别 我正在阅读反应文档 https reactjs org docs 但它没有说 React 和 ReactDOM 最近才被分成