使用Backbone和Underscore进行多属性查找

时间:2012-02-08 15:20:08

标签: javascript backbone.js underscore.js

我的集合中有一个名为activeCall的方法,它将id作为参数。此方法使用下划线执行_find并返回第一个匹配项。我想要做的是将多个参数传递给方法,然后让.get()函数使用这些参数。

以下是我目前的情况:

var Activities = Backbone.Collection.extend({
    model: Activity,
    url: "/activity",
    activeCall: function (Activity_id) {
        return _.find(this.models, function (item) {
            return item.get("Activity_id") === Activity_id;
        });
    }
});

以下是我想做的事情:

var Activities = Backbone.Collection.extend({
    model: Activity,
    url: "/activity",
    activeCall: function (Activity_id, CallType_id) {
        return _.find(this.models, function (item) {
            //How do I use both Activity_id & CallType_id with the call to item.get()?
            return item.get("Activity_id") === Activity_id && item.get("CallType_id") === CallType_id;
        });
    }
});

1 个答案:

答案 0 :(得分:3)

好吧,事实证明return item.get("Activity_id") === Activity_id && item.get("CallType_id") === CallType_id;确实有效。我之前试过它只是为了踢,但它没有用。我一定是做错了,因为它现在正在运作。