目前我有两个聚合物组件共享大量数据。你可以在这里看到:
<polymer-component1
series="{{series}}"
stackhelper={{stackhelper}}
stack={{stack}}
controls={{controls}}
camera={{camera}}
threed={{threed}}
scene={{scene}}
renderer={{renderer}}>
</polymer-component1>
<polymer-component2
stackhelper=[[stackhelper]]
stack={{stack}}
controls={{controls}}
camera={{camera}}
threed={{threed}}
scene={{scene}}
renderer={{renderer}}
guiobjects={{guiobjects}}>
</polymer-component2>
这现在工作正常,但是共享数据的最佳实践是什么?有什么方法可以在两个组件之间共享所有属性吗?
建议通过数据绑定共享数据,就像您正在执行的操作一样。您可以共享任何属性,而不仅仅是字符串和数字。例如,假设您有一个对象
.JS
data = {
series: "",
stackhelper: "",
stack: "",
controls: "",
camera: "",
threed: "",
scene: "",
renderer: "",
}
您的代码可以像这样重写。
.HTML
<polymer-component1 data="{{data}}"></polymer-component1>
<polymer-component2 data="{{data}}"></polymer-component2>
在聚合物 2 中,一个元素可以通过扩展来继承属性。
class MyElementSubclass extends MyElement {...}
或者,您创建一个仅包含双方都需要的属性的元素,然后两个组件都扩展了父级。您可以在此处找到它,向下滚动到扩展现有元素