问题标签 [virtual-dom]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 为什么说 React 的 Virtual DOM 概念比脏模型检查更高效?
我在(Pete Hunt: React: Rethinking best practice -- JSConf EU 2013 )上看到了一个React开发者演讲,演讲者提到模型的脏检查可能很慢。但是,在大多数情况下,虚拟 DOM 应该比模型大,因此计算虚拟 DOM 之间的差异实际上不是性能更差吗?
我真的很喜欢 Virtual DOM 的潜在力量(尤其是服务器端渲染),但我想知道所有的优点和缺点。
javascript - virtual-dom - 如何获取真实的 DOM 元素以便与 spin.js 集成?
使用virtual-dom库时,如何获取与虚拟元素对应的真实 DOM 元素?用例是我需要通过spin.js库操作 DOM。
相应地,在 React 中,您将调用React.findDOMNode以获取要传递给 spin.js 的元素。
示例代码:
dom - Web 组件(聚合物)和/或 Shadow DOM 是否与虚拟 DOM 兼容?
我正在努力思考 Web 组件是否可以利用虚拟 DOM 提供的速度改进。我猜 Shadow DOM 可能是一个绊脚石。
我比神秘的(对我而言)Shadow 或 Shady DOM 更了解虚拟 DOM 的概念。
虚拟 DOM 差异的概念是否适用于 Shadow DOM,或者它们不兼容?
例如,虚拟 dom 项目可以与Polymer Web 组件一起使用吗?
javascript - 虚拟dom超标中的不确定复选框
如何在虚拟超标中创建不确定的复选框?
将不起作用,因为indeterminate
它是属性而不是属性。
reactjs - Mithril VM DOM diffing 未检测到附加事件处理程序中的差异
这可能不是秘银特定的问题,但一般来说 VM DOM 不同。在“重绘”页面并附加新的事件处理程序、删除事件处理程序或更改与“onclick”等事件关联的事件处理程序时,似乎 VM DOM 差异不会检测到更改,我必须显式强制重新渲染“真实”DOM。
是否有一个很好的模式来处理这些情况。
javascript - 虚拟 DOM 如何提高 ReactJS 的速度?
我读到 ReactJS 与其他框架相比非常快,因为 if 使用虚拟 dom。
我无法理解的是最终所有框架都必须在浏览器中推送 dom 对象。virtualDom 如何帮助提高速度?
假设我要添加 10K 节点列表,ReactJS 和其他框架所需的 DOM 操作时间不应该相似吗?
javascript - D3js 和 React 关于 DOM 操作
D3 dom 操作机制如何影响(如果有的话)React 的虚拟 dom?
我发现很多例子表明这两个库可以很好地协同工作,但没有一个提到这个问题。顺便说一句,这可能根本不是问题,这只是我提出的一个大问题,但找不到回答。
编辑:
我刚刚了解到,只有在“写入”虚拟 dom 时,dom 才会更新。并且总是在从实际“阅读”中“阅读”时在虚拟 dom 上完成。
所以当我使用 D3 直接更新 DOM 时,virtual-dom 对此一无所知,我将无法从 virtual-dom 中读取新的更改。这就是我所害怕的,现在我想知道当我不得不使用 D3 时 React 是如何帮助我的?
mithril.js - 如何在重绘中保留 Mithril 中的 DOM 元素
我想知道,在 Mithril 中,跨重绘保留 DOM 元素的最佳做法是什么。
我有一个 iframe,其中包含一个导航链接,因为它的内容。我需要在 Mithril 的重绘中保留这个 iframe。
我已经尝试了以下解决方案,其中 iframe 在组件的控制器函数中使用 redraw.stategy 设置为“none”来呈现。
但是,iframe 似乎在重绘时发生了变化:
这是保留 DOM 元素的正确方法吗?还是有另一种方法来实现这一目标?
谢谢你。