繁体   English   中英

Polymer 1.x:势在必行添加事件监听器

[英]Polymer 1.x: Imperatively adding event listener

我已经为我的<iron-ajax>调用的自定义元素添加了一个事件监听器。

是否有更短(更方便的语法)方式来命令性地 (即使用Javascript)在Polymer中添加事件监听器?

换句话说,Polymer库是否包含任何为此加糖的语法?

定制element.html
 <template> ... <iron-ajax id="ajax" last-response="{{ajax}}"></iron-ajax> ... <template> <script> ... var that = this, t = this.$.ajax; t.addEventListener('response', function(e) { console.log(that.ajax); }); ... </script> 

研究

这里的文档说

您还可以使用语法nodeId.eventNamethis.$集合中的任何元素添加事件侦听nodeId.eventName

但我认为这仅适用于在Polymer对象中使用listeners属性,如:

 listeners: { 'tap': 'regularTap', 'special.tap': 'specialTap' }, 

什么应该在JS中工作(仅在Dart中尝试过)

 this.listen(this.$.ajax, 'last-response', 'lastResponseHandler');

还有this.unlisten()取消事件订阅。 我假设如果你必须添加它,你还需要删除它以防止内存泄漏。

参考文献:

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM