聚合物2事件

0 shadow-dom polymer custom-element polymer-2.x

我正在重写我的Polymer 1.0应用程序Polymer 2.0(和TS),我遇到了一个问题.如何将事件从一个元素转移到另一个元素?我之前使用的是iron-signal,现在我正在尝试使用CustomEvent,但因为ShadowDOM事件没有达到元素.

元素的层次结构大致如下:

1 {2 {3 {4}}}}.

我需要从抛出一个事件element 1element 4,而在另一种情况下,反之亦然.

我怎样才能做到这一点?只通过window.AddEventListener

小智 5

默认情况下,自定义事件在阴影DOM边界处停止.要使自定义事件通过shadow DOM边界,请在创建事件时将composition标志设置为true:

var event = new CustomEvent('my-event', {bubbles: true, composed: true});
Run Code Online (Sandbox Code Playgroud)

https://www.polymer-project.org/2.0/docs/devguide/events