聚合物 2 事件

Polymer 2 events

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

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

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

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

我该怎么做?只能通过 window.AddEventListener?

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

var event = new CustomEvent('my-event', {bubbles: true, composed: true});

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