集合实例可以绑定到自定义事件吗?我用jQuery试过了:$(collectionInstance).on(eventsmap)
。
然后,当我尝试检查已注册的事件时:
console.log($.data(collectionInstance, 'events'));
我获得了绑定到实例的所有自定义事件。
但是$(collection).trigger('customevent');
不会触发此自定义事件,并且不会调用事件处理程序。
当我尝试对Backbone.View
进行相同的操作时,我可以触发自定义事件,以解决任何问题。为什么会这样?我错过了什么吗?
主干集合Backbone.Events
混合在一起,因此集合具有on
、off
和trigger
方法。您希望使用这些方法,而不是尝试将集合包装在jQuery中:
collectionInstance.on('event', callback, context);
// One by one until you're done
然后在其他地方:
collection.trigger('customevent');