聚合物中的横向沟通

雷诺

这是问题所在:

任何两个聚合物元素都可能需要通信。这些元素可能在DOM(或影子DOM)中的位置没有做任何假设,这意味着一个事件不能简单地冒泡到另一个元素。

实现此目的的一种好方法是让事件冒泡到根节点,然后在根节点上触发广播事件,以供其他元素侦听。

但是,这种方法破坏了封装,似乎违背了Polymer的整体设计。例如,AngularJS提供了一个事件广播器,可以防止控制器不必要地保留对根节点的引用。

聚合物可以实现这种方法吗?否则可以用其他方法解决吗?

罗布德森

您应该可以使用 polymer-signals

http://www.polymer-project.org/articles/communication.html#using-ltpolymer-signalsgt

引用文档:

您的元素触发聚合物信号并在其有效负载中命名信号:

this.fire('polymer-signal', {name: "foo", data: "Foo!"});

此事件起泡,直到文档记录到处理程序在哪里构造并向的所有实例分配新事件polymer-signal-foo。应用程序的某些部分或其他Polymer元素可以声明一个元素来捕获命名的信号:

<polymer-signals on-polymer-signal-foo="{{fooSignal}}"></polymer-signals>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在聚合物中定位?

来自分类Dev

聚合物数据绑定中的“ with”语句?

来自分类Dev

聚合物特性不在元素中

来自分类Dev

去除飞镖中的聚合物元素

来自分类Dev

聚合物-遍历模板中的对象

来自分类Dev

飞镖聚合物中的条件CSS

来自分类Dev

声明聚合物中的事件

来自分类Dev

Chrome打包应用中的聚合物

来自分类Dev

访问聚合物中的含量值

来自分类Dev

聚合物中的事件处理

来自分类Dev

聚合物元素中的getElementById

来自分类Dev

Chrome打包应用中的聚合物

来自分类Dev

聚合物WebComponent中的jQuery选择

来自分类Dev

循环在聚合物中的Wordpress文章

来自分类Dev

聚合物1.0中的元素特性

来自分类Dev

如何选择聚合物中的桌布?

来自分类Dev

脚本中的聚合物调用函数

来自分类Dev

访问聚合物中的DOM

来自分类Dev

聚合物指针

来自分类Dev

聚合物路线

来自分类Dev

聚合物表达

来自分类Dev

Laravel +聚合物

来自分类Dev

聚合物安装

来自分类Dev

聚合物元素未从字符串/文本中注册到聚合物中

来自分类Dev

聚合物1.0中的“聚合物就绪”事件是否与之等效?

来自分类Dev

在聚合物元素(聚合物1.2.3)中动态注入共享样式

来自分类Dev

聚合物元素未从字符串/文本中注册到聚合物中

来自分类Dev

聚合物1.0中的聚合物表达式和过滤器

来自分类Dev

聚合物1.0在聚合物函数中添加变量