聚合物的光DOM和本地DOM有什麼區別? 來自文檔(1):聚合物:光DOM與本地DOM
元素創建和管理的DOM稱爲其本地DOM。 這與元素的子元素有所不同,爲了清晰起見,元素的子元素有時稱爲其輕DOM。
這似乎沒有多大幫助。不是輕的DOM應該包含孩子,如果是的話,本地DOM包含什麼?
[1] https://www.polymer-project.org/1.0/docs/devguide/local-dom
聚合物的光DOM和本地DOM有什麼區別? 來自文檔(1):聚合物:光DOM與本地DOM
元素創建和管理的DOM稱爲其本地DOM。 這與元素的子元素有所不同,爲了清晰起見,元素的子元素有時稱爲其輕DOM。
這似乎沒有多大幫助。不是輕的DOM應該包含孩子,如果是的話,本地DOM包含什麼?
[1] https://www.polymer-project.org/1.0/docs/devguide/local-dom
這裏的解釋的差異的示例。假設你有以下自定義元素:
<dom-module id="x-foo">
<template>
<div>I am local dom</div>
<content></content>
</template>
<script>
Polymer({
is: 'x-foo'
});
</script>
</dom-module>
而且您在文檔中使用這樣的:
<x-foo>I am light dom</x-foo>
你把什麼都成元素的模板是本地DOM。當您使用它作爲兒童使用您的自定義元素時,您可以使用光源。所以,本地dom由元素的創建者決定,而光明dom由元素的用戶設置。當然,當你創建和使用你自己的自定義元素時,你可以靈活地放置在哪裏。
如果您創建組件<a-component>
,那麼它有自己的標記(它是模板),它是本地DOM。該模板可以包含子女投影到的<content></content>
標籤(一個無名和多個名字)。在DOM中顯示作爲兒童添加的內容。
當我們有一個與它的<a-component>
的本地DOM
<dom-module id="a-component">
<template>
<div>A</div>
<content></content>
<div>B</div>
</template>
</dom-module>
,我們使用它像
<a-component>
<div>C</div>
</a-component>
然後<div>C</div>
在光DOM表示。在瀏覽器中生成的DOM然後看起來像
<div>A</div>
<div>C</div>
<div>B</div>
凡<div>A</div>
和<div>B</div>
從組件的外側看到和<div>C</div>
是在光DOM時被稱爲本地DOM從<a-component>
和背陰或陰影DOM內看時。
如果我們再此標記,我們將添加到頁面
<a-component>
<div>C</div>
</a-component>
你看到<div>C</div>
直接通過而<div>A</div>
和<div>B</div>
隱藏組件的用戶添加的(陰影),並只顯示稍後當<a-component>
由瀏覽器處理時。
陰影和陰影的區別在於是否啓用了完整陰影DOM或未啓用聚合物。 Shady在一定程度上模仿了影子,但有一些顯着的差異,這就是爲什麼它有不同的名字。
啊對!我愚蠢地考慮到''中除' '之外的那些元素,因爲''的孩子也是如此。 –
scarecrow