这是我的步骤:
声明 Backbone colleciton 的扩展集合:extendedCollection = $.extend({},backboneCollection, decorator);
使用扩展集合构建复合视图。
做extendedCollection.remove(xModel);
预期结果:复合视图将捕获删除事件,并将从复合视图中删除相关的项目视图。
实际结果:Backbone 的 remove() 函数触发“remove”事件。_initialEvents 中的 Marionette 监听“remove”事件,但在触发时未捕获 remove 事件,因此不执行函数“removeItemView”。
注释:使用代码 extendedCollection = $.extend(backboneCollection, decorator); 一切正常。但是在扩展原始骨干集合时,我必须创建新对象。
帮助?