3

有没有办法create在集合的开头使用新模型而不是在末尾附加它?

4

2 回答 2

8

Backbone 将插入委托给Collection.add这意味着您可以传递一个at选项来指定位置:

var C = Backbone.Collection.extend({
    url: '/echo/json/'
})
var c= new C([
    {name: 1},
    {name: 2},
    {name: 3}
]);

c.create({name: 4}, {at: 0});
console.log(c.pluck('name'));

将产生[4,1,2,3]

还有一个小提琴http://jsfiddle.net/nikoshr/p6fNR/

于 2012-09-19T10:27:16.997 回答
3

注意:这些天你可以使用unshift

var ships = new Backbone.Collection;

ships.unshift([
  {name: "Flying Dutchman"},
  {name: "Black Pearl"}
]);
于 2014-11-07T02:49:03.200 回答