我的应用程序有一个带两个面板的仪表板。每个面板都是一个不同的主干视图,可以在相应的面板中呈现模板。视图由骨干路由器实例化。我需要在某处放置一个Drop Event Listener来检测一个View中的<li>
元素何时被删除到第二个View上。但是,我不知道把听众放在哪里......
•当我将事件放在"drop #drop-zone": "handleDrop"
•在实例化视图后将事件侦听器放入路由器也不起作用。
•我的下一个想法是将Drop Event Listener放在ListeStart的Listener中,但我不确定这是否是最好的路径。
听取Drop事件的适当位置在哪里?
答案 0 :(得分:0)
// app.js, main.js, router.js, etc.
window.event_bus = {};
_.extend(object, Backbone.Events);
event_bus.on("drop", function(target) {
// do something with target
});
// drop-zone-one-view.js
"drop #drop-zone-one": function () { event_bus.trigger('drop', 'drop-zone-one') }
// drop-zone-two-view.js
"drop #drop-zone-two": function () { event_bus.trigger('drop', 'drop-zone-two') }