过滤Ember ArrayProxy

时间:2015-01-19 09:19:55

标签: ember.js ember-data

您如何过滤ArrayProxy的结果?我已经尝试过切片,过滤,拒绝,所有这些都导致视图无效。我想这是因为数据还没有,但是当时(...)的使用还没有完成。有什么想法吗?

shownEvents: function(){
    return Em.ArrayProxy.createWithMixins(Em.SortableMixin, {
        content: this.get('shownUser.events'),
        sortProperties: ['eventTime.startTime', 'eventTime.endTime'],
        sortAscending: true
    });
  }.property("shownUser"),

我已经回顾了很多与此类似的文章,但没有发现任何有用的文章。

Can I add an additional computed property to an Ember ArrayProxy?

1 个答案:

答案 0 :(得分:3)

您可以通过将函数传递给ArrayProxy并返回filter来获取应通过过滤测试的值来过滤true

类似的东西:

App.IndexRoute = Ember.Route.extend({
  model: function() {
    return { pets: [ { type: 'dog'}, { type: 'cat'}, { type: 'fish'}] };
  }
});

App.IndexController = Ember.ObjectController.extend({
  myPets: function(){
    return Em.ArrayProxy.createWithMixins(Em.SortableMixin, {
      content: this.get('pets'),
      sortProperties: ['type'],
      sortAscending: true
    }).filter(function(item){ return item.type.length === 3});
  }.property("pets"),
});

作品here

如果你已经尝试过,请填写免费忽略此内容;)