有什么方法可以在聚合物组件之间共享数据?



目前我有两个聚合物组件共享大量数据。你可以在这里看到:

<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 {...}

或者,您创建一个仅包含双方都需要的属性的元素,然后两个组件都扩展了父级。您可以在此处找到它,向下滚动到扩展现有元素

最新更新