指数给出一个面板入门当前拖动项目的Backbone.CollectionView
var panel = new Backbone.CollectionView({...})
如何获得当前的模型进行排序?
panel.on('sortStart', function(e) {
var index = something;
});
指数给出一个面板入门当前拖动项目的Backbone.CollectionView
var panel = new Backbone.CollectionView({...})
如何获得当前的模型进行排序?
panel.on('sortStart', function(e) {
var index = something;
});
我想你使用某种UI操作工具,例如jQuery UI。正如Lesha在她的comment中所说的那样,可以通过触发模型视图上的事件来完成。
//creting children view
var PanelItem = Backbone.View.extend({
events: {
"sortStart": "sortEventPropagation"
},
initialize : function (options) {
this.parentView = options.parentView;
},
sortEventPropagation: function(){
this.parentView.trigger('sort:start:propagated', this.model);
},
})
每次创建panelItem视图时,都需要在选项中将其作为parentView传递给panelItem视图。
var childView = new PanelItem({
parentView: panel
})
而且面板上,你可以很容易地listenTo sort:start:propagated
事件
var Panel = Backbone.CollectionView.extend({
initialize: function(){
this.listenTo(this, 'sort:start:propagated', function(model){
//Do magic with model
})
},
})
你想获得排序的完整集合,如果不是你是什么让模型分类意味着
谢谢,我已经得到了这个工作。我不得不绑定到sortstop(在ul元素上拖拽列表)和sortStop(在Backbone.CollectionView上)。 – Zahymaka 2014-10-01 07:13:26
? – StateLess 2014-09-27 07:55:31
如果我理解正确,您应该从模型视图中触发该事件。 – 2014-09-27 08:15:17