0

有没有办法让新实例化的模型知道其集合中基于 0 的索引并分配它?就像是:

var m = Backbone.Model.extend({
    initialize: function() {
        this.set('index', '// 0-based index inside the parent collection//');
    }
});
4

1 回答 1

3

您可以使用 indexOf 获取集合上模型的索引

collection.indexOf(model)

或者,如果您无权访问视图中的集合,但您知道模型位于特定集合中,则始终可以像这样获取集合:

model.collection.indexOf(model)

我不建议将索引存储在模型上,因为每次添加其他模型时,都必须更新集合中每个模型的索引值。

于 2012-10-12T09:46:43.950 回答