你会如何从集合中渲染前n个模型?

时间:2014-03-26 20:03:16

标签: javascript backbone.js marionette

我有一个父视图,从服务器获取20个模型的集合。然后父视图调用三个子视图进行渲染。这些子视图中的每一个都使用该集合,但所有视图都使用不同的程度例如,一个将使用所有模型,而另外两个将只需要前五个模型进行渲染。我想将前五个模型的集合传递给只需要五个的两个子视图,并将完整集合传递给使用所有模型的视图。

我可以单独渲染它们并对服务器进行三次不同的调用,但是1次调用优于3次,我想知道是否有办法只通过调用来执行此操作。

我尝试了下划线方法     _.first(this.collection.models, 5)但是当您将此结果传递给视图时:

this.view = new View({collection:_.first(this.collection.models, 5) })我收到错误

任何帮助都将不胜感激。

由于

1 个答案:

答案 0 :(得分:1)

您可以使用方法collection.first,但此方法返回模型数组。所以你需要从中创建新的Collection:

var firstFive = new Backbone.Collection(fullCollection.first(5));