我看到直接绑定到兄弟元素不再支持 - https://www.polymer-project.org/1.0/docs/migration.html#binding-to-sibling-elements结合兄弟元素
1.0作品的属性,但怎么样直接绑定到同级元素本身,例如建议的方法:
<template>
<x-publisher id="publisher"></x-publisher>
<x-subscriber publisher="{{$.publisher}}"></x-subscriber>
</template>
我在0.5中使用这个来访问方法的同级元素以及属性。有没有办法在1.0中做到这一点?一般来说这是不好的做法?
更新
基于瓦尔坦奥斯的评论我看了看铁元&看来你可以做这样的事情在x出版商的定义:在x
new Polymer.IronMeta({key: 'publisher', value: this});
然后用户定义你可以这样做:
this.publisher = (new Polymer.IronMeta()).byKey('publisher');
然而,你没有得到绑定系统的好处这 - 例如你不能使用观察者数组观察发布者对象的基于路径的属性更改。你可以直接设置一个对象观察者,但是比直接绑定到兄弟姐妹的旧0.5方法开始变得更加混乱。
了解这只是性能折衷的一部分,但要确认没有更好的方法!也很高兴知道绑定到全元素通常是性能问题。
这是不是你想这样做(至少不是以这种方式)1.0。相反,请查看[iron-meta](https://elements.polymer-project.org/elements/iron-meta),这是1.0中共享DOM树中信息/方法的首选方式。这与[iron-validator-behavior](https://elements.polymer-project.org/elements/iron-validator-behavior)使用的模式相同,它允许您在元素/应用程序中的某处实例化数据验证器并使用其功能在别处通过指向它与各自的财产。 –
另请注意,类似于铁元方法,您可以向引用其'this'对象的x-publisher元素添加'self'属性,然后使用'self'属性执行绑定。不确定绑定到整个元素的性能影响。 – max