Angular 2的DOM操作

Angular 2的DOM操作,dom,angular,virtual-dom,Dom,Angular,Virtual Dom,我有一个关于Angular 2内部DOM操作的“简单”问题。Angular 2使用虚拟DOM、增量DOM还是什么。我一直在互联网上寻找Angular 2在内部使用什么进行DOM操作,但我似乎找不到它 我理解他们是如何创建组件的,以及他们如何允许我们开发人员使用我们想要的封装策略 我知道它使用区域来检测更改,使用可观察对象来应用更改,但他们是否提出了自己的内部DOM操作逻辑,还是在实际DOM上进行操作 React使用虚拟dom,Ember使用glimmer,其他框架使用增量dom。Angular

我有一个关于Angular 2内部DOM操作的“简单”问题。Angular 2使用虚拟DOM、增量DOM还是什么。我一直在互联网上寻找Angular 2在内部使用什么进行DOM操作,但我似乎找不到它

我理解他们是如何创建组件的,以及他们如何允许我们开发人员使用我们想要的封装策略

我知道它使用区域来检测更改,使用可观察对象来应用更改,但他们是否提出了自己的内部DOM操作逻辑,还是在实际DOM上进行操作

React使用虚拟dom,Ember使用glimmer,其他框架使用增量dom。Angular 2使用什么

蒂亚

无论何时创建组件,Angular都会将其模板放入
shadowRoot
,它是该特定组件的阴影DOM。 这样,我们就可以免费获得DOM树和样式封装,对吗? 但是如果浏览器中没有阴影DOM呢?这是否意味着我们 在这些环境中不能使用Angular 2?我们可以。事实上,2 默认情况下不使用本机阴影DOM,它使用模拟。成为 技术上正确,它也不会为我们的 组件,以防未使用本机阴影DOM


更多信息:

您可以使用Angular2 Hey@tibbus中的指令操作DOM,谢谢您的评论。我希望了解Angular 2如何在内部操纵DOM。React使用虚拟DOM。看看[]伙计们,我读了很多文章,这就是其中之一。请理解,Pretch正在讨论组件如何使用不同的封装策略。您可以使用阴影DOM或模拟。这不是我的问题。我的问题是,一旦Angular 2检测到更改,它将使用什么算法来了解更改了哪些组件,以及如何使用该更改“修补”真实dom。我相信完全不同的主题。@btinoco要理解变更检测策略,这将有帮助,谢谢@manolis的回答。请参见React使用虚拟dom在内部操纵dom。它对真实dom和虚拟dom进行区分,并对更改的节点进行修补。余烬用微光操纵dom。然后我们有了增量dom来在其他框架中操作dom。我想知道Angular 2的用途是什么?像虚拟dom、微光、增量dom、原始dom之类的东西?