如何使用等效的.slice(开始、结束)更改backbone.js集合

如何使用等效的.slice(开始、结束)更改backbone.js集合,backbone.js,Backbone.js,我的主干收集在fetch()上接收30个模型 我试过了 newColl=origColl.first(2); 返回一个新集合。当我试图传递到视图时,它将不起作用 是否仍然可以使用下划线.js方法执行此操作?我不确定是否正确理解了您的问题,但下面的代码片段可能正是您要查找的内容 var model = origColl.at(2); var models = [model]; var newColl = new YourCollection(models); newColl现在将是一个新

我的主干收集在fetch()上接收30个模型

我试过了

   newColl=origColl.first(2);
返回一个新集合。当我试图传递到视图时,它将不起作用


是否仍然可以使用下划线.js方法执行此操作?

我不确定是否正确理解了您的问题,但下面的代码片段可能正是您要查找的内容

var model = origColl.at(2);
var models = [model];
var newColl = new YourCollection(models);

newColl现在将是一个新的集合,包含位于原始集合位置2的模型。这个例子比我写的要详细一点,但它可能会让你更清楚。

我不确定我是否正确理解了你的问题,但下面的片段可能就是你想要的

var model = origColl.at(2);
var models = [model];
var newColl = new YourCollection(models);

newColl现在将是一个新的集合,包含位于原始集合位置2的模型。这个例子比我写的要详细一点,但它可能会让您更清楚。

您的代码可能不起作用,因为
first(n)
在视图需要集合时返回一个数组。您需要像这样包装它:

var newColl = new Backbone.Collection(origColl.first(2));
对于常规“切片”,您可以将
find
结合使用

var newColl = new Backbone.Collection(origColl.find(_.range(start, end));
当然,您可以使用自己的collection类,而不是
主干。collection


请参阅位于的
range
文档。

您的代码可能无法正常工作,因为
first(n)
在视图需要集合时返回一个数组。您需要像这样包装它:

var newColl = new Backbone.Collection(origColl.first(2));
对于常规“切片”,您可以将
find
结合使用

var newColl = new Backbone.Collection(origColl.find(_.range(start, end));
当然,您可以使用自己的collection类,而不是
主干。collection

请参阅位于的
范围的文档