繁体   English   中英

React(钩子)是否需要使用状态来执行其虚拟 dom diff 魔术?

[英]Does React (hooks) require the use of states in order to do its virtual dom diff magic?

这一直让我感到困惑。 如果我说“谢谢 React,您的 state 钩子很棒,但我只是在这里直接进行 dom 操作”,react 仍然会进行虚拟 dom 比较以仅更新该特定项目吗? 我还会从虚拟 dom 的“情况”中受益吗?

使用 react 直接操作没有状态的 dom 与使用标准 HTML 文件和导入的 vanilla js 代码之间有什么区别吗?

为清楚起见,这是一个示例,假设我有 function printHellol() 由我的 JSX 中的“单击”按钮触发。 function 以元素的 ID 为目标并更改文本内容。

我在任何地方都找不到答案。 谢谢!

他在 state 中持有的任何东西都成为 object 的一部分,该 object 反应呈现为与 dom 分离的元素。 它本质上是为所有州创造一个单独的环境。 在 state 之外使用的任何东西都可以被认为是直接 dom object 的一部分,从而导致在发生更新时重新呈现页面。 换句话说,如果您想访问虚拟 dom 特定环境,则需要使用特定于反应的 state。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM