Eclipse表示EventCategories(active)是尚未初始化的潜在局部变量。我看不出如何避免这种情况。有什么帮助吗?我也是Backbone.js newb,所以我不确定我是否确实在做正确的事情(即使它可以工作)。

define([ "modules/config/model/event-category" ], function(EventCategory) {
    var EventCategories = Backbone.Collection.extend({
        model : EventCategory,
        url : restEndpoint + "/config/category",
        getActive : function() {
            var active = this.filter(function(eventCategory){
                return eventCategory.get("active") === true;
            });
            return new EventCategories(active);
        }
    });
    return EventCategories;
});

最佳答案

我想您可以使用this.constructor作为获取EventCategories的后门方法:


  Object.prototype.constructor
  
  返回对创建实例原型的Object函数的引用。请注意,此属性的值是对函数本身的引用,而不是包含函数名称的字符串。


因此,如果thisEventCategories实例,则this.constructor === EventCategories。就您而言,您可以说:

return new this.constructor(active);

07-22 21:40