javascript - Backbone.js Collection 过滤器前 10 个模型

标签 javascript backbone.js backbone.js-collections

我的收藏集获取了一些记录,我只需要显示其中的前 10 条记录。我试过了

   this.collection.each(function(){
        if (count == 10) break;
        //pass model to view
   });

不幸的是 break 不适用于 underscore.js 的 each() API 引用这里:how to break the _.each function in underscore.js

我如何编写一个过滤器以仅从集合中提取前 10 个

     this.collection.filter();

更新:collection.first(10) 为我获取了过滤列表。但是,我仍然需要将 .each() 链接到该集合以处理集合项。 collection.first() 不允许链。请引用我选择的答案来解决这个问题。

最佳答案

例如

this.collection.first(10)

然后,如果您需要使用每个模型,例如:

    var collection = new Backbone.Collection([{id:1}, {id:2}, {id:3}, {id:4}, {id:5}],{model: Backbone.Model});

    var newCollection = new Backbone.Collection(collection.first(2));

    newCollection.each(function(model){
      alert(JSON.stringify(model.toJSON()));
    });

参见 jsfiddle . 的 请注意,还有另一种方法可以使用 Underscore chain method如本topic所述.

看看Backbone docUnderscore doc .

关于javascript - Backbone.js Collection 过滤器前 10 个模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11890849/

相关文章:

javascript - "Undefined is not a function"调用 Backbone 集合的获取函数时出错

javascript - 按字母顺序排列的主干订单集合

javascript - 渐进增强和 "flash of unhidden content"?

javascript - jQuery 帮助删除追加后的 div

java - Wicket 口:后退按钮 上一页

javascript - Backbone + 需要 Backbone.localStorage

javascript - 中心 bezierCurve html5 Canvas 绘图?

ruby-on-rails - 主干和 rails 。为什么要在 Backbone 中设置路由?

backbone.js - 如何在 Backbone 中正确使用事件

javascript - 2 个具有相同模型但排序顺序不同的 backbone.js 集合