带有_作为参数的Underscore.js _.partial不起作用

时间:2014-02-17 22:50:23

标签: javascript backbone.js underscore.js

我正在使用Backbone和Underscore。

根据Underscore.js的_.partial(function, *args)函数文档:

  

您可以在参数列表中传递_以指定不应预先填充的参数,但在呼叫时保持打开状态。

有没有人有这样一个有效的例子?我正在这样的视图中创建部分调用:

this.filterCollection = _.partial(filterFn, _, searchTerm);

filterFn的位置如下:

function(license, key) {
    var organization;
    organization = App.organizations.get(license.get('organization_id'));

    if (license.isNew()) {
        return true; // Always include new models in the search.
    } else {
        return (organization && organization.get('name').indexOf(key) !== -1);
    }
}

我在这样的视图中调用它:

this.filterCollection(model)

filterFn在第organization = App.organizations.get(license.get('organization_id'));行崩溃,因为license没有方法get

当我在Chrome中检查license时,它指向:

Object function (obj) {
    if (obj instanceof _) return obj;
    if (!(this instanceof _)) return new _(obj);
    this._wrapped = obj;
}

1 个答案:

答案 0 :(得分:4)

看起来他们刚刚在版本1.6.0中添加了使用_作为参数的选项。难怪我找不到太多关于它的文档。 :)