如何使用等效的.slice(开始、结束)更改backbone.js集合
我的主干收集在fetch()上接收30个模型 我试过了如何使用等效的.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现在将是一个新
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
请参阅位于的范围的文档