首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >虚拟DOM在React或Vue中的工作方式

虚拟DOM在React或Vue中的工作方式
EN

Stack Overflow用户
提问于 2022-01-19 15:59:20
回答 2查看 394关注 0票数 0

我是一名学生,我正试图为我的大学项目创建自己的虚拟DOM (它将没有任何像道具或事件这样的高级特性,我将保持它的简单性),就像其他著名的框架React、Vue和其他。

我只想知道,当我们有多个文件的代码(代码分裂)。如果我对任何深层子元素进行了更改,而不是需要比较完整的虚拟DOM (包括所有的子元素和父元素),或者只需要比较该子元素。

如果我必须将完整的新虚拟DOM (包括所有的子程序)与以前的虚拟DOM进行比较。那么,为什么我要关心React或Vue中的重新呈现(因为子元素的任何更改都会迫使框架比较完整的虚拟DOM )

EN

回答 2

Stack Overflow用户

发布于 2022-01-19 23:00:41

对于Vue,虚拟DOM在vue2和vue3中的工作方式不同。

vue3做这件事的方式是,

  1. 通过解析组件文件中的HTML模板或呈现函数,并将其转换为Virtual表示。
  2. 在进行解析时,它记录依赖于动态数据的节点。
  3. 如下所示

dynamicData ={ data1: effect1,effect2,.,data2: effect4,effect5,……}

  1. 效果是定义解析某些数据值所需的计算的函数。
  2. 效果还包括虚拟节点的呈现功能
  3. 呈现函数巧妙地将虚拟节点转换为DOM元素。
  4. 现在,每当data1更改时,Vue3都会重新执行相应的效果并触发对后续数据更改的更新。

参考资料:

  1. Vue3反应性
  2. Vnode变换
票数 1
EN

Stack Overflow用户

发布于 2022-01-19 16:08:15

回答最后一点,我从我的反应经验中推断,比较Javascript中的Virtual是一种东西,它可以帮助我们知道它必须在实际的DOM上重新渲染什么,所以“重呈现”是应用程序性能受到影响的困难部分。希望这能帮上忙。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70773783

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档