我可能忽略了某些东西,或者只是一个菜鸟,但是,我无法将键值对传递给 javascript 函数。
我正在编写一个使用 Backbone.View 和 Backbone.Paginator.clientPager 集合的过滤器模块。我向 clientPager 添加了一个名为 whereExpanded() 的函数,该函数在不修改/渲染任何内容的情况下搜索整个集合。
Backbone.Paginator.clientPager.prototype.whereExpanded = function(attrs) {
return _.filter(this.origModels, function(model) {
var key;
for (key in attrs) {
if (attrs[key] !== model.get(key)) {
return false;
}
});
};
如您所见,它获取attrs
变量并对其进行循环。我希望能够将键值对传递给它,但是键和值必须是动态的。
collection.whereExpanded(filterByField, filterByValue)
filterByField
是我希望过滤的 Backbone.Model 的属性,是我要过滤filterByValue
的属性的值。我已经尝试过使用 eval()
,但我似乎也无法让它发挥作用。
任何帮助将不胜感激!