浏览器 DOM 元素是我们在屏幕上看到的东西,React 元素也是如此。他们俩都可以上课。据我所知,唯一的区别是浏览器 DOM 元素由浏览器 DOM 处理,而 React 元素由 React Virtual DOM 处理。尽管存在一些语法差异。除此之外,React 元素与浏览器 DOM 元素有何不同?
React 控制如何以及何时更新实际 dom。 另一个区别是更新虚拟 dom 比更新实际 dom 更高效。
这个过程称为协调。
HTML 元素是标准化的,并且取决于元素的类型(有时是语义的)。它们可以被爬虫、机器人、屏幕阅读器、浏览器扩展等软件理解。插件和辅助软件。
React JSX 元素在编译时被解析并解构为 JavaScript 代码。
React JSX 标记示例:
<Hello toWhat="World" />
编译为:
React.createElement(Hello, {toWhat: 'World'}, null)
我认为由react控制的react元素会在重新渲染期间以异步过程更新它们。创建一个新的完整虚拟 dom 后,这些元素将在 React 中进行比较,并将更新列表发送到 ReactDOM,ReactDOM 将同步更新 DOM 元素。