Backbone:仅在尚不存在的情况下添加事件侦听器

时间:2013-01-17 11:15:59

标签: backbone.js backbone-events

换句话说:我如何找到已经收听的事件列表?

我正在使用Backbone.on(...和Backbone.trigger(...在两个彼此不了解的视图之间进行通信。但是,添加侦听器的视图实际上是一个“项目 - 查看“为一个集合,所以我添加了很多听众,所以我想首先检查是否已经收听了该事件.10x。

2 个答案:

答案 0 :(得分:10)

Backbone.Events对象有一个名为_events

的事件字典

因此,要检查某些事件是否已被收听,您可以在相关视图中实现一个函数:

isEventListenedTo: function(eventName) {
  return (view._events) ? !!view._events[eventName] : false;
}

_events -dictionary包含每个事件名的数组,因此您还可以检查事件被侦听的次数等。

希望这有帮助!

答案 1 :(得分:0)

的属性

Object._callbacks

匹配您的活动名称