在这篇有用的文章中,我们可以学习如何通过模板中的内联标记来监听调度的自定义事件: How do I fire a custom event from Polymer Dart? 我想知道在动态创建自定义元素时是否可以在dart脚本中执行相同操作,如下所示:
var myElement = new Element.tag('my-element');
答案 0 :(得分:4)
组件中的每个事件处理程序都需要EventStreamProvider
(静态)
和一个易于访问的吸气剂。
static const EventStreamProvider<CustomEvent> logoutEvent =
const EventStreamProvider<CustomEvent>("my-logout");
Stream<CustomEvent> get onLogout => MyElement.logoutEvent.forTarget(this);
你发起像
这样的事件this.dispatchEvent(new CustomEvent("my-logout", detail: {'someData': 'bla'}));
// Polymer provides a shortcut for this
fire('my-logout', detail: {'someData': 'bla'});
您订阅此活动,如
mySesson.onLogout.listen((e) => doSomething());