我有一个父视图,从服务器获取20个模型的集合。然后父视图调用三个子视图进行渲染。这些子视图中的每一个都使用该集合,但所有视图都使用不同的程度例如,一个将使用所有模型,而另外两个将只需要前五个模型进行渲染。我想将前五个模型的集合传递给只需要五个的两个子视图,并将完整集合传递给使用所有模型的视图。
我可以单独渲染它们并对服务器进行三次不同的调用,但是1次调用优于3次,我想知道是否有办法只通过调用来执行此操作。
我尝试了下划线方法
_.first(this.collection.models, 5)
但是当您将此结果传递给视图时:
this.view = new View({collection:_.first(this.collection.models, 5) })
我收到错误
任何帮助都将不胜感激。
由于
答案 0 :(得分:1)
您可以使用方法collection.first,但此方法返回模型数组。所以你需要从中创建新的Collection:
var firstFive = new Backbone.Collection(fullCollection.first(5));