0
我有(僅用於測試)以下聚合物組分:敲除聚合物組分與黑幕的Dom正確結合,但沒有陰影的Dom
<dom-module id="visu-conveyor">
<template>
<div id='conveyor'>
{{objectName}}
<div style="width: 80px; height: 90%;">
<div style="width: 10px; height: 10px; background: blue;" data-bind="visible: B.B.Value"></div>
<span data-bind="text: $data"></span>
</div>
</div>
</template>
<script>
Polymer({
is: "visu-conveyor",
properties: {
objectName: String
},
attached: function() {
var self = this;
var dc = ko.dataFor(self);
ko.applyBindings(dc, self.$.conveyor);
}
});
</script>
</dom-module>
該組件在另一個組件也許託管這樣的:
<dom-module id="visu-tag-root-canvas">
<template>
<div style="height: 100%; width: 100%" id="rootObj">
<content></content>
</div>
</template>
<script>
Polymer({
is: "visu-tag-root-canvas",
properties: {
tagRoot : String
},
ready: function() {
var self = this;
var dc = ko.dataFor(self);
if (self.tagRoot != null) {
//self.$.rootObj.setAttribute("data-bind", "with: " + self.tagRoot);
//todo -> get folder recursive
ko.applyBindings(dc[self.tagRoot], self.$.rootObj);
} else {
ko.applyBindings(dc, self.$.rootObj);
}
}
});
</script>
</dom-module>
對於實施例的頁面可以看起來像這樣:
<visu-tag-root-canvas>
<visu-conveyor style="width: 88px; height: 130px; top: 74px; position: absolute; left: 64px;" object-name="HH66"></visu-conveyor>
<visu-conveyor style="width: 88px; height: 130px; top: 74px; position: absolute; left: 160px;" object-name="aa31"></visu-conveyor>
<visu-tag-root-canvas tag-root="A" style="left: 284px; position: absolute; top: 255px; width: 305px; height: 216px;">
<visu-conveyor style="width: 88px; height: 130px; top: 27px; position: absolute; left: 30px;" object-name="EE77"></visu-conveyor>
<visu-conveyor style="width: 88px; height: 130px; top: 27px; position: absolute; left: 126px;" object-name="II88"></visu-conveyor>
</visu-tag-root-canvas>
</visu-tag-root-canvas>
這意味着2 VISU-輸送機插件ide第二個visu-tag-root-canvas應該綁定到「A.B.B」,而外部的綁定到「B.B」!
這適用於陰暗的dom!但是當我啓用陰影Dom時,所有綁定到相同的變量! 「B.B」
加法我的DataContext的結合看起來是這樣的:
{
A {
B {
B {
Value
}
}
}
B {
B {
Value
}
}
}