Javascript Ember.js:控制器属性中的模型过滤可以简化吗?

Javascript Ember.js:控制器属性中的模型过滤可以简化吗?,javascript,ember.js,Javascript,Ember.js,我已经创建了一个控制器,它从我的API中获取一些模型。然后我对结果应用了一个过滤器。这样做的原因是,我不希望此属性包括新创建的模型,因为它们在持久化之前将没有必要的数据 我的问题很简单,这是否可以简化: badgesets: function() { var self = this, p = new Em.RSVP.Promise(function(resolve, reject) { self.store .find('badgeset'

我已经创建了一个控制器,它从我的API中获取一些模型。然后我对结果应用了一个过滤器。这样做的原因是,我不希望此属性包括新创建的模型,因为它们在持久化之前将没有必要的数据

我的问题很简单,这是否可以简化:

badgesets: function() {
  var self = this,
      p = new Em.RSVP.Promise(function(resolve, reject) {
        self.store
            .find('badgeset')
            .then(function(objects) {
              resolve(self.store.filter('badgeset', function(item) {
                return ! item.get('isNew')
              }));
            })
            .fail(reject);
      });

  return DS.PromiseArray.create({
    promise: p
  });
}.property()

这是我的建议。1./您设置了self=this,并且您主要使用store,那么为什么不使用var self=this.store并只使用self呢。2./您正在查找并使用.then函数'object',但您从未使用过'objects',您再次使用self.store.filter,我认为这与查找几乎相同,但有了一个筛选器,我认为您可以将查找和筛选组合成一个查询,并对返回的对象执行搜索。如果这会触发什么,请告诉我谢谢你,兰圭。至于2,find和filter的不同之处在于find对my API运行请求,而filter对加载的记录运行请求。这实际上是我想避免的主要事情。