换句话说:我如何找到已经被收听的事件列表?
我正在使用 Backbone.on(... 和 Backbone.trigger(... 在两个彼此不了解的视图之间进行通信。但是,添加侦听器的视图实际上是一个集合,因此我添加了许多侦听器,因此我想首先检查该事件是否已被侦听。10x。
换句话说:我如何找到已经被收听的事件列表?
我正在使用 Backbone.on(... 和 Backbone.trigger(... 在两个彼此不了解的视图之间进行通信。但是,添加侦听器的视图实际上是一个集合,因此我添加了许多侦听器,因此我想首先检查该事件是否已被侦听。10x。
该Backbone.Events
对象有一个事件字典,称为_events
因此,要检查是否已经在监听某个事件,您可以例如在相关视图中实现一个函数:
isEventListenedTo: function(eventName) {
return (view._events) ? !!view._events[eventName] : false;
}
_events
-dictionary 包含每个事件名称的数组,因此您还可以检查事件被监听的次数等。
希望这可以帮助!
的属性
Object._callbacks
匹配您的活动名称