在主HTML頁面:的index.html否鑄聚合物元件
<poly-container a="Hi">
<poly-item b="hi"></poly-item>
</poly-container>
在聚合物HTML定義:polycontainer.html
<poly-container>
<template> ...
<content></content>
</template>
</poly-container>
在飛鏢類:polycontainer.dart ...有標記<content>
用於渲染外部DOM; ...和2類:PolyContainer和PolyItem
processList() // calling from PolyContainer Constructor;
{
PolyItem cl;
HtmlElement a;
ContentElement cont=shadowRoot.querySelector('content');
List<Node> chil=cont.getDistributedNodes();
for (var i=0; i < chil.length; i++) {
if (chil[i].nodeName == 'POLY-ITEM') {
a=chil[i]; // (1)
cl=chil[i] as PolyItem; // (2)
cl=a as PolyItem; // (3)
}
chil[i].remove();
}
}
(1)Cast OK; (chil [i]是Node類型,「a」是類型HtmlElement(Node-> Element-> HtmlElement)
(2)*例外:類型'HtmlElement'在類型轉換中不是類型'PolyItem'的子類型。
(3)*例外:。類型 '的HtmlElement' 不是類型的類型轉換的子類型 'PolyItem'
選項2和3在不同時間進行測試
我認爲,如果我們需要在PolyItem構造函數中啓動某個變量或調用一個函數。 有人試圖投射一個擴展類PolymerElement?